如何写SQL的删除语句才不会出错?
ADOQuery1.SQL.Clear;
ADOQuery1.Open;
ADOQuery1.Edit;
ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='+Edit4.Text);
ADOQuery1.Post;这是我的语句,可是老是出错,各位大哥,拜托了.
ADOQuery1.SQL.Clear;
ADOQuery1.Open;
ADOQuery1.Edit;
ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='+Edit4.Text);
ADOQuery1.Post;这是我的语句,可是老是出错,各位大哥,拜托了.
解决方案 »
- DELPHI7 ADO ORACLE11g 连接的问题
- 第三方控件TRzCheckTree第三层数据如果被选中变灰不能被修改如何实现?
- 关于用delphi 自带工具 HCW.exe 制作系统帮助文件的问题————————在线等待!急急急急急!
- 一个视频学习的网站,有PB6.5、JAVA、VC、VB的很多教程,目前可以自由下载观看
- 查询不符合条件的记录,请教
- 诚招石家庄的朋友?请留QQ或E_mail
- 谢谢大家关注我的问题!(关于Locate查询速度慢的问题),这里有我的详细说明,请看--------------
- 诚意寻踏实有经验技术人员入股
- 各位delphi程序员工程师兄弟,现在到年底了,大家都来谈谈你们都拿多少钱的年终奖好吗?
- 手里有FTP空间又狂想要控件和资料的朋友请进!!!
- fsMDIForm 主窗体为什么不能 创建 fsMDIchild 子窗体
- 我自编了一个com,为什么不能调用?
adoquery1.execsql;
如果你要用POST 可以先SELECT 再 DELETE
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='+Edit4.Text); ADOQuery1.ExecSQL;
ADOQuery2.SQL.Add('delete from PROBLEM_SET where ID='''+Edit4.Text+'''');
ADOQuery2.ExecSQL;
ADOQuery1.Close;
ADOQuery1.Open;
ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='+#39+Edit4.Text+#39);
ADOQuery1.ExecSQL;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='+Edit4.Text);
ADOQuery1.ExecSQL;
Open;对于select语句
ExecSQL对于delete,update,select,insert语句
ADOQuery1.close;
ADOQuery1.SQL.Clear; //不要这句
ADOQuery1.SQL.Text:='delete from PROBLEM_SET where ID='+Edit4.Text;
ADOQuery1.ExecSQL;
是不是少一句?
2。ID是什么类型的
可以用format语句的变量代替
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:='delete from PROBLEM_SET where ID='+Edit4.Text;
ADOQuery1.ExecSQL;
ADOQuery1.SQL.Clear;
ADOQuery1.Open;
ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='+Edit4.Text);//id为数值型
( ADOQuery1.SQL.Add('delete from PROBLEM_SET where ID='''+Edit4.Text+'''');//id为字符型)
ADOQuery1.Post;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:='delete PROBLEM_SET where ID=:aaa; //aaa为中间变量
ADOQuery1.Parameters.ParamByName('aaa').Value:=Edit4.Text;
ADOQuery1.ExecSQL;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('delete from PROBLEM_SET where ID='''+Edit4.Text+'''');
ADOQuery1.prepared; ADOQuery2.ExecSQL;
注意如果是char 的话必须加引号, 如果是整形则可免掉