with query1 do
begin
close;
sql.Clear;
sql.Add('insert money values(:a)');
ParamByName('a').asstring:=trim(edit1.text);
open;
execsql;
end;这里'a'代表的是数据库的第哪个字段?错误提示:列名或所提供的数目与表不匹配这是为什么?
begin
close;
sql.Clear;
sql.Add('insert money values(:a)');
ParamByName('a').asstring:=trim(edit1.text);
open;
execsql;
end;这里'a'代表的是数据库的第哪个字段?错误提示:列名或所提供的数目与表不匹配这是为什么?
ParamByName('a').asstring:=trim(edit1.text); 意思是为名字是a的参数赋值为trim(edit1.text)
然后将a所代表的值付给相关字段
那edit1.text赋值给'a',a 对应的是数据表中哪个字段呢?
begin
close;
sql.Clear;
sql.Add('insert into money(name,age,tel,address)values(:a,:b,:c,:d)');
ParamByName('a').asstring:=trim(edit1.text);
ParamByName('b').asstring:=trim(edit1.text);
ParamByName('c').asstring:=trim(edit1.text);
ParamByName('d').asstring:=trim(edit1.text);
open;
execsql;
end;
begin
close;
sql.Clear;
sql.Add('insert into money(name,age,tel,address)values(:a,:b,:c,:d)');
ParamByName('a').asstring:=trim(edit1.text);
ParamByName('b').asstring:=trim(edit2.text);
ParamByName('c').asstring:=trim(edit3.text);
ParamByName('d').asstring:=trim(edit4.text);
open;
execsql;
end;
begin
close;
sql.Clear;
sql.Add('insert into money(name,age,tel,address) values(strtoint(edit1.text),strtoint(edit2.text),strtoint(edit3.text),strtoint(edit4.text))');
execsql;
end;
close;
sql.Clear;
sql.Add('insert into [money]([name],age,tel,address) values(:a,:b,:c,:d)');
ParamByName('a').value:=trim(edit1.text); //或者试试 strtoint(edit1.text);
ParamByName('b').value:=trim(edit2.text);
ParamByName('c').value:=trim(edit3.text);
ParamByName('d').value:=trim(edit4.text);
execsql;
end;