这是怎么回事? ( 积分: 50 )

  • 主题发起人 主题发起人 小毛孩
  • 开始时间 开始时间

小毛孩

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure Tmy_Form4.insert_XXX;
begin
with my_Form4.adoquery1 do //写XXX表
begin
close;
sql.Clear;
sql.text:='insert into use_data(user,mima) '
+' values(:a0, :a1)';
Parameters[0].Value :=trim(edit4.Text);
Parameters[1].Value :=strtoint(trim(edit2.Text));
prepared;
execsql;
end;
end;
这段话编译通过,但运行到此就出现错误,提示为“insert into语句的语法错误”?
救命啊!!!
 
with my_Form4.adoquery1 do //写XXX表
begin
close;
sql.Clear;
//增加一个变量s, 一个editS: TEdit;
s := 'insert into use_data(user,mima) '
+' values(:a0, :a1)';
editS.text := s; //显示到界面, 出错后在查询分析器中执行SQL语句, 看不什么错. 有可能表名不存在
sql.text := s;
Parameters[0].Value :=trim(edit4.Text);
Parameters[1].Value :=strtoint(trim(edit2.Text));
prepared;
execsql;
end;
end;
 
你的use_data中 user字段名称 为系统关键字 加上方括号[user]
这样就可以了
 
sql.text:='insert into use_data([red][user][/red],mima) '
user在SQL里面是保留字,保留字同名的字段必须用方括号括起来。
 
你的数据类型有错吗 ,先检查一下
 
3868474的方案我还没试过,他下面的两位正确,但[red][user][/red]是什么意思我不清楚
只要[user]就够了,我的数据类型没错
 

Similar threads

I
回复
0
查看
609
import
I
I
回复
0
查看
2K
import
I
I
回复
0
查看
3K
import
I
I
回复
0
查看
2K
import
I
I
回复
0
查看
972
import
I
后退
顶部