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

关于sql语句执行的问题 找用友财务软件免费版

进销存软件版1楼: 我使用的是Delphi5.0加Access2000
在Access在中有一个文本型的字段,字段大小是4位用来放年度,去年是2005
我在Delphi中用一条Sql语句准备把所有记录都更新为2006,用文本框传递数据2006
update 表名 set 字段=eidt.text
系统老是提示Update有误,不知道什么原因
程序原文如下:
DM.ADOQuery1.close;
nn:= ndjzEdit1.text;
MySQL1:=''update ckqk set year = nn'';
DM.ADOQuery1.SQL.clear;
DM.ADOQuery1.SQL.Add(MySQL1);
//DM.ADOQuery1.SQL.Add(nn);
DM.ADOQuery1.ExecSQL;

2楼: MySQL1:=''update ckqk set year = "''+nn+''"''; 如东莞速达软件

3楼: MySQL1:=''update ckqk set year = '' + IntToStr(nn); //nn=2006

4楼: 把 NN 转换为字符类型

INTTOSTR(NN)

5楼: year字段是文本的,delphi中的文本框内容也是文本的,前面三位的我试了都不可以,估计不是文本数据传递的问题,好像delphi不支持文本字段的sql查询?

6楼: MySQL1:=''update ckqk set year = ''''''+ ''2006'' +'''''''';

进销存软件版7楼: 请高手赐教

8楼: 扯淡呢,


MySQL1:=''update ckqk set year =''+QuotedStr(nn);
去用吧,不会错的

9楼: Bjyplbx,
是正解!!

10楼: 我的Access数据库没有建索引,year是数据库的第一个字段,会不会把它当成默认的索引字段了?然后就不能用sql语句?

11楼: 不会,用MySQL1:=''update ckqk set year = ''+QuotedStr(edit1.text);没错的,
因为字符串类型的字段,要把字符串常量写到SQL语句里,两边要加引号。

12楼: 在sql中使用文本框内容的方法我是了解的,各位老大说的都是对的。但我的问题显然不是出在文本内容传递上,即使在sql中写死update ckqk set year=2006也是报update语句错,问题现在至今没有解决。
再说一下:我的数据库是Access2000,year属性是文本,是我的数据库的第一个字段,而且即使把year属性改成长整型也是不行的 如用友财务软件免费版

13楼: 如果year是文本型的话,royal1442所讲的应该是可以的
不行的话你在ACCESS里面用查询试下,看看它支持什么样的语句啊,我试过可是没有问题

进销存软件版14楼: MySQL1:=''update ckqk set year = ''''''+nn+'''''''';