帮我看下以下语句中的类型转换的问题,谢谢,在线等 ( 积分: 50 )

  • 主题发起人 主题发起人 yuting2003
  • 开始时间 开始时间
Y

yuting2003

Unregistered / Unconfirmed
GUEST, unregistred user!
注释中是表中的类型<br>以下是我写的sql语句,<br>大家不要笑我,我不知道怎么弄了,<br>数据库是mysql的.谢谢大家<br><br>adoquery1.Close;<br>adoquery1.SQL.Clear;<br>adoquery1.SQL.Add('update&nbsp;'+juesebm+'&nbsp;set&nbsp;NAME=:name,GOODNESS=:dizhi,GRACE=:GRACE'+<br>',LUCKY=:LUCKY,EXPLOIT=:EXPLOIT,PKADDITION=:PKADDITION,HONOR=:HONOR,COUNTRY=:COUNTRY'+<br>',SEPTID=:SEPTID,UNIONID=:UNIONID,CONSORT=:CONSORT,MAPID=:MAPID,MAPNAME=:MAPNAME,X=:X'+<br>',Y=:Y,SKILLPOINTS=:SKILLPOINTS,MEN=:MEN,POINTS=:POINTS,&nbsp;INT=:INT,&nbsp;DEX=:DEX,CON=:CON'+<br>',STR=:STR,GOLD=:GOLD,TICKET=:TICKET,SALARY=:SALARY,&nbsp;LEVEL=:LEVEL,ROUND=:ROUND'+<br>',PUNISHTIME=:PUNISHTIME,FORBIDTALK=:FORBIDTALK&nbsp;where&nbsp;CHARID=:CHARID');<br>adoquery1.Parameters.ParamByName('name').Value:=trim(flatedit3.Text);&nbsp;//varchar(33)<br>adoquery1.Parameters.ParamByName('dizhi').Value:=strtoint(trim(flatedit7.Text));&nbsp;//int<br>adoquery1.Parameters.ParamByName('GRACE').Value:=strtoint(trim(flatedit8.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('LUCKY').Value:=strtoint(trim(flatedit9.Text));&nbsp;&nbsp;//&nbsp;smallint(5)<br>adoquery1.Parameters.ParamByName('EXPLOIT').Value:=strtoint(trim(flatedit10.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('PKADDITION').Value:=strtoint(trim(flatedit11.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('HONOR').Value:=strtoint(trim(flatedit12.Text));&nbsp;&nbsp;&nbsp;&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('COUNTRY').Value:=strtoint(trim(flatedit31.Text));//int(10)<br>adoquery1.Parameters.ParamByName('SEPTID').Value:=strtoint(trim(flatedit32.Text));//&nbsp;int(10)<br><br>adoquery1.Parameters.ParamByName('UNIONID').Value:=strtoint(trim(flatedit33.Text));//int(10)<br>adoquery1.Parameters.ParamByName('CONSORT').Value:=strtoint(trim(flatedit34.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('MAPID').Value:=strtoint(trim(flatedit13.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('MAPNAME').Value:=trim(flatedit14.Text);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//varchar(33)<br>adoquery1.Parameters.ParamByName('X').Value:=strtoint(trim(flatedit15.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('Y').Value:=strtoint(trim(flatedit16.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('SKILLPOINTS').Value:=strtoint(trim(flatedit17.Text));&nbsp;//smallint<br>adoquery1.Parameters.ParamByName('MEN').Value:=strtoint(trim(flatedit18.Text));&nbsp;//smallint<br>adoquery1.Parameters.ParamByName('POINTS').Value:=strtoint(trim(flatedit19.Text));&nbsp;&nbsp;//smallint<br><br>adoquery1.Parameters.ParamByName('INT').Value:=strtoint(trim(flatedit20.Text));&nbsp;//smallint<br><br>adoquery1.Parameters.ParamByName('DEX').Value:=strtoint(trim(flatedit21.Text));&nbsp;//smallint<br>adoquery1.Parameters.ParamByName('CON').Value:=strtoint(trim(flatedit22.Text));&nbsp;&nbsp;&nbsp;//smallint<br>adoquery1.Parameters.ParamByName('STR').Value:=strtoint(trim(flatedit23.Text));&nbsp;//smallint<br>adoquery1.Parameters.ParamByName('GOLD').Value:=strtoint(trim(flatedit24.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('TICKET').Value:=strtoint(trim(flatedit25.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('SALARY').Value:=strtoint(trim(flatedit26.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('LEVEL').Value:=strtoint(trim(flatedit27.Text));//smallint<br>adoquery1.Parameters.ParamByName('ROUND').Value:=strtoint(trim(flatedit28.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('PUNISHTIME').Value:=strtoint(trim(flatedit29.Text));&nbsp;//int(10)<br>adoquery1.Parameters.ParamByName('FORBIDTALK').Value:=strtoint(trim(flatedit30.Text));&nbsp;//bigint<br>adoquery1.Parameters.ParamByName('CHARID').Value:=strtoint(trim(flatedit1.Text));&nbsp;&nbsp;//int(10)<br>adoquery1.ExecSQL;<br><br>运行时候总错误
 
报啥错?
 
自己修改一下<br>var<br>strSQL:string;<br>...<br>strSQL:='update&nbsp;'+juesebm+'&nbsp;set&nbsp;NAME='+QuotedStr(trim(flatedit3.Text))+'&nbsp;'+;<br>&nbsp;'&nbsp;where&nbsp;CHARID='+QuotedStr(trim(flatedit1.Text))&nbsp;+'&nbsp;';<br>adoquery1.Close;<br>adoquery1.SQL.Clear;<br>adoquery1.SQL.Text:=strSQL;<br>ShowMessage(strSQL);//应该可以明白什么问题<br>...
 
刚发现,原来是表中有个字段是int的,去掉int字段就没事了,这个怎么办?怎样写sql语句向表中的int字段修改,
 
去掉?<br>是删除吗?<br>怎样写sql语句向表中的int字段修改?<br>修改字段类型还是字段内容?<br><br>这个(字段是int)对应你上面代码是哪个字段?
 
不是,表中有个字段名是int,是字段名,不是类型&nbsp;<br>怎样写sql语句&nbsp;&nbsp;好象要加上什么的,
 
加一个[int]测试看看,不过数据库里面尽量不要出现这种字段,看了不知道什么意思,而且很很多开发语言的关键字冲突,还是修改一下数据库的字段名吧。
 
没办法啊,这是一个游戏数据库,不能改的
 
不行啊,加[]这个也不行啊,怎么办???谁知道,
 
删除&nbsp;再插入?
 
怎么删除?删除这个字段?不可以的,原先有数据的啊,<br>而且服务器都在运行的,其他玩家都有可能在更新数据啊,(指游戏客户端),<br><br>我这个是工具啊,不知道怎么写了,各位看看啊,在线等<br>我的QQ:66492479,
 
adoquery1.Parameters.ParamByName('INT').Value:=strtoint(trim(flatedit20.Text));&nbsp;//smallint<br>把这个参数&nbsp;INT&nbsp;换成其他的字符表示
 
后退
顶部