我的sql语句自动生成下面的样子:
DELETE FROM table WHERE and rule_ip =''
我发现这样子不对,需要替换成下面的样子:
DELETE FROM table WHERE and rule_ip is null我这样替换:sql:=StringReplace(sql,'='''',' IS NULL ',[rfReplaceAll]);结果怎么没有替换呢?
DELETE FROM table WHERE and rule_ip =''
我发现这样子不对,需要替换成下面的样子:
DELETE FROM table WHERE and rule_ip is null我这样替换:sql:=StringReplace(sql,'='''',' IS NULL ',[rfReplaceAll]);结果怎么没有替换呢?
解决方案 »
- FastReport 4 打印StringGrid时强行换页怎么写?搞到我头都大了
- 在调用应用程序服务器的函数时为何会出现多次调用的情况?
- 问一下那位高手做过"CA"认证的,帮忙指点一下或给源码参考一下,我从没做过,不知从那下手
- 再没有delphi的机器上,连不上数据库? 分不够再加,很急!!!!
- 急急!!!treeview中的stateindex和selectedindex,imageindex如何用,(在线等候)
- delpi 打开项目的问题
- 求TRegExpr正则表达式
- 请教高手如何对运算符重载
- 急,现场给分,在Delphi2007竟然找不到mxarrays单元,有谁知道TIntArray在D2007应该怎么用吗?
- 如何将光标放在DBGRID的第一个记录的第一列中
- 探讨下DLL如何截获外部窗口消息?
- SOAP web service
我这样替换:sql:=StringReplace(sql,'=''''',' IS NULL ',[rfReplaceAll]);
sql:=StringReplace(sql,'=''''',' IS NULL ',[rfReplaceAll]);
procedure TF_Main.btnTestClick(Sender: TObject);
var
sql: string;
begin
//
sql := 'DELETE FROM table WHERE and rule_ip =''''';
sql:=StringReplace(sql,'=''''',' IS NULL ',[rfReplaceAll]);
showmessage( sql );
end; 结果
DELETE FROM table WHERE and rule_ip IS NULL
DELETE FROM table WHERE and IsNull(rule_ip,'') =''
sql:='DELETE FROM table WHERE rule_ip =''%s''';
sql:=format(sql,['']); StringReplace(sql,'=''''',' IS NULL ',[rfReplaceAll]);//这里不能替换 //test 上面仁兄的可以替换,为什么呢?
delSql := 'DELETE FROM table WHERE rule_ip =''''';
delSql:=StringReplace(delSql,'=''''',' IS NULL ',[rfReplaceAll]);
showmessage( delSql );
//
StringReplace(sql,'=''''',' IS NULL ',[rfReplaceAll]);
sql:=StringReplace(sql,'=''''',' IS NULL ',[rfReplaceAll]);
你没有把替换的结果赋给sql啊