100分太少了,请教一个SQL语句的问题。

jkoala 2003-06-14 08:21:28
我想写一个SQL语句更新数据库记录,如下:
qqq:='update tablename set a="'+b+'",itemdet="'+memo1.Text'
where itemname="'+itemn+'"'

其中的 itemdet字段的类型是MEMO,如果变量如果是含有或其他字符,系统报错,
例如,加入 "fasfas",&dfd"

其实我的目的是在此字段中加入任何的字符串,请教如何解决。
...全文
26 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
qzg 2003-06-17
  • 打赏
  • 举报
回复
qqq:='update tablename set a=:b,itemdet=:memo
where itemname=:itemn'
with query1 do
begin
if active then close;
sql.clear;
sql.add();
ParamByName('b').AsString :=b;
ParamByName('memo').AsString :=memo1.Text;
ParamByName('itemn').AsString :=itemn;
ExecSQL;
end;
jndragon 2003-06-17
  • 打赏
  • 举报
回复
还是参数好用
pigeonwind 2003-06-17
  • 打赏
  • 举报
回复
qqq:='update tablename set a='''+b+''',itemdet='''+memo1.lines.Text+''' where itemname='''+itemn+''''
注意where 前面的空格
jkoala 2003-06-17
  • 打赏
  • 举报
回复
TO:asdf008(棒棒糖)
我也使用的参数,但还是不行,不知道你是如何用的
2353939 2003-06-15
  • 打赏
  • 举报
回复
注意引号的用法
shaoyan 2003-06-14
  • 打赏
  • 举报
回复
支持
BobLeeCn 2003-06-14
  • 打赏
  • 举报
回复
支持 asdf008(棒棒糖)的说法。
goldencity 2003-06-14
  • 打赏
  • 举报
回复
up
asdf008 2003-06-14
  • 打赏
  • 举报
回复
用QuotedStr还是不保险的,你应该用参数,Parameters,否则如果memo里面有冒号之类的东西还是很容易出错的
hanhsh 2003-06-14
  • 打赏
  • 举报
回复
qqq:='update tablename set a='''+b+''',itemdet='''+Memo1.Text+''' where utenbane='''+itemn+''''.
franne 2003-06-14
  • 打赏
  • 举报
回复
你是标点没理解好,qqq:='update tablename set a="'+b+'",itemdet="'+memo1.Text+'" where itemname="'+itemn+'"';
lxl 2003-06-14
  • 打赏
  • 举报
回复
呵呵
我指的是
QuotedStr(Memo1.Lines.Text)
lxl 2003-06-14
  • 打赏
  • 举报
回复
楼上的说的没错
things 2003-06-14
  • 打赏
  • 举报
回复
qqq:='update tablename set a="'+b+'",itemdet="'+memo1.Text+'" where itemname="'+itemn+'"';
Feather Duster 2003-06-14
  • 打赏
  • 举报
回复
就是Memo1.Lines.Text;如果不可以加一个QuotedStr(Memo1.Lines.Text)
应该可以的,没有时间试验,好运!

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧