我在ACCESS中有这样一张表
姓名(文本) 密码(文本) 所属部门(文本) 生成日期(日期型) 权限(文本)我用ADOQUERY添加数据
var
name,password,departmen,right:string;
name:=Edit1.text;
password:=edit2.text;
department:=edit3.text;
right:=Edit4.text;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('insert into userpower values(:name,:password,:department,Date(),:right)');
adoquery1.execsql;
adoquery1.open;
为什么总是提示错误信息:数据类型错误?
姓名(文本) 密码(文本) 所属部门(文本) 生成日期(日期型) 权限(文本)我用ADOQUERY添加数据
var
name,password,departmen,right:string;
name:=Edit1.text;
password:=edit2.text;
department:=edit3.text;
right:=Edit4.text;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('insert into userpower values(:name,:password,:department,Date(),:right)');
adoquery1.execsql;
adoquery1.open;
为什么总是提示错误信息:数据类型错误?
adoQuery1.parameter.parameterByName('name').value :=Edit1.text;
…… ……
…… ……
adoquery1.execsql;
虽然你的命名一样但不能代替
adoQuery1.parameter.parameterByName('name').value:=name;必须加上
adoquery1.sql.text := 'insert into userpower values ( ' + quotedstr(Edit1.text) + ',' + quotedstr(edit2.text) + ',' + quotedstr(edit3.text) + ',' + quotedsrt(Edit4.text) + ')';
adoquery1.execsql;
用一个就可以!
adoquery1.sql.clear;
adoquery1.ConnectionString := ServerPath;// 服务器连接 ('Provider=MSDASQL.1;Password="";Persist Security Info=True;User ID=xfpjl;Data Source=XXXXX;Initial Catalog=XXXXX';)
adoquery1.sql.add('insert into userpower values(:name,:password,:department,Date(),:right)');
adoQuery1.parameter.parameterByName('name').value :=Edit1.text;
adoQuery1.parameter.parameterByName('password').value :=Edit2.text;
adoQuery1.parameter.parameterByName('department').value :=Edit3.text;
adoQuery1.parameter.parameterByName('Date()').value :=Edit4.text;// ?????
adoQuery1.parameter.parameterByName('right').value :=Edit5.text;
adoquery1.execsql;
adoQuery1.parameter.parameterByName('password').value :=Edit2.text;
adoQuery1.parameter.parameterByName('department').value :=Edit3.text;
adoQuery1.parameter.parameterByName('Date()').value :=Edit4.text;// ?????
adoQuery1.parameter.parameterByName('right').value :=Edit5.text;
adoquery1.execsql;
你定义的字符串变量怎么能当成参数用呢?..
呵呵...