程序如下:
SqlL:='select * from 31msn04 where';
SqlL:=SqlL+'id=:10';
datamodule1.Tempquery.Close;
datamodule1.Tempquery.Prepared:=false;
datamodule1.Tempquery.SQL.Clear;
datamodule1.Tempquery.SQL.Add(SqlL); DataModule1.Tempquery.Prepare ;
当程序运行到这一步时,总是提示:
Invalid use of keyword
Token:31msn04
Line Number:1
31msn04数据表是在程序运行中建立起来的,不知该数据表有什么问题?
datamodule1.Tempquery.Open;
SqlL:='select * from 31msn04 where';
SqlL:=SqlL+'id=:10';
datamodule1.Tempquery.Close;
datamodule1.Tempquery.Prepared:=false;
datamodule1.Tempquery.SQL.Clear;
datamodule1.Tempquery.SQL.Add(SqlL); DataModule1.Tempquery.Prepare ;
当程序运行到这一步时,总是提示:
Invalid use of keyword
Token:31msn04
Line Number:1
31msn04数据表是在程序运行中建立起来的,不知该数据表有什么问题?
datamodule1.Tempquery.Open;
解决方案 »
- 求delphi高手帮我查下error原因
- 好久不搞delphi一搞就出问题.问题解决立刻给分.
- 未声明的问题
- 请教各位:delphi中formclose时,哪些东西需要手动释放?来者有分
- 请教:有关软件使用权限的控制??
- procedure TForm1.Button1Click(Sender: TObject); 这个(Sender: TObject)参数是啥意思? 可否举个例子
- 关于MDI窗口的问题,急,急!
- 各位大哥,我是一个初学者,我想问为什么要动态配置odbc????
- 弹出菜单问题!
- 参与就有分!!!!!谢谢大家帮个忙!!刚才关于这个问题还有些分,不够我可以再加!
- 急寻:access数据库备份,恢复的解决方法!谢谢!
- 帮忙更正语法。
是不是这句写错了,只有在使用变量时,才在前面加:号的.你后面可不是一个变量呀.
SqlL:=SqlL+' id=10';
^ ^
<1> <2> datamodule1.Tempquery.Close;
datamodule1.Tempquery.Prepared:=false;
datamodule1.Tempquery.SQL.Clear;
datamodule1.Tempquery.SQL.Add(SqlL); DataModule1.Tempquery.Prepare ;
提示好像是数据表有什么问题,可是数据表是存在并可以打的开的
如果用上述程序把31msn04表换成其它的表就可以通过的
不知SQL本身对数据表有什么要求
Invalid use of keyword
Token:31msn04
Line Number
这个就是错误提示如果把SQL语句改成如下所示
SqlL:='select max(id) from 31msn04';
Tempquery.Close;
Tempquery.Prepared:=false;
Tempquery.SQL.Clear;
Tempquery.SQL.Add(SqlL);
Tempquery.Prepare ;
提示为
raised exception class EDBEngineError with message'Invalid use
of keyword
Token:from
Line Number:1'.Process stopped. Use Step or Run to continue.如果换成一个其它的数据库,哪怕没有ID字段,也不会是在Prepare的地方提示此错误,而是在open时才提示,而该数据表用非SQL语句则可以访问,添加 删除 查询 均可