当前位置:主页>销售管理软件> 列表

小问题,帮忙写一个sql语句。(高分/简单问题)

销售管理软件版1楼: 原来的sql:
update dbo.dw set jg=''1|''+zhh+'' |''+right(''0000000000000000''+rtrim(ltrim(str(je*100))),16)+''|0|01|11111111111111111111''
加到adoquery1.sql.add()中,应该如何写?
其中 dw 是个变量,zhh,je 是字段名

中间的逗号太多,从早晨一直搞到现在,还是报错,望大侠们抽出一两分钟帮帮我。
最好能解释一下,“授人鱼,不如授人渔”吗!谢谢!

2楼: 用2个单引号 如销售软件破解版

3楼: 我知道用2个单引号 ,就是用不好,总不成功,能不能帮忙写全,楼上大侠

4楼: 你可以这样试试:
adoquery1.text := ''update dbo.dw set jg=''''1|'''' + zhh + '''' |'''' +
'' right( ''''0000000000000000'''' + rtrim(ltrim(str(je*100))),16)''+''''|0|01|11111111111111111111'''''';

5楼: 改变一下思路,先用变量将需要更新的字串写下来
var
str:string ;
str:= ''1|''+zhh+'' |''+right(''0000000000000000''+rtrim(ltrim(str(je*100))),16)+''|0|01|11111111111111111111''
最后在执行adoquery1.sql.add(''update dbo.dw set jg=''+str)
否则容易搞的晕头转向。

调试处理方法:在adoquery1.exevute之前先用showmessage(adoquery1.sql)查看语法是否正确,最好能将语句取出拿到sql分析器执行,检查语法。

6楼: var
DW,zhh:string;
je:Integer;
begin
DW:=''dbo.dw'';
ZZH:=''ZZH'';
je:=10;
Query.Close;
Query.SQL.Clear;
Query.SQL.Add(''UpDate ''+Str);
Query.SQL.Add(''Set jg=''''1|''''+''+zhh+''+''''|''''+''''''+right(''0000000000000000''+rtrim(ltrim(str(je*100))),16)+''|0|01|11111111111111111111'''''');
Query.ExecSQL;
end;

销售管理软件版7楼: 如果是字符的就用兩個單引號(''''字符''''),如果是變量字符串就用三個單引號(''''''+變量+'''''')

8楼: 我试了一下,好像上面几个都不行,因为语句中的加号也必须要考虑进去
[blue]顺便问一下,delphi7的sql分析器在那个菜单下,本人英文水平比较差,而且初学,望不吝赐教。[/blue]

9楼: 先不要考虑Delphi怎么实现,先写出一个你想执行的SQL的例子在看看Delphi怎么写

10楼: Query.SQL.Text:=''update dbo.dw set jg=''
+ QuotedStr( ''1|'')
+ ''+zhh+''
+ QuotedStr('' |'')
+ ''+right(''+ QuotedtStr(''0000000000000000''''
+ ''+rtrim(ltrim(str(je*100))),16)+'' + QuotedStr(''|0|01|11111111111111111111'')

11楼: 多人接受答案了。