请教一句出错提示的含义!!(5分)

  • 主题发起人 主题发起人 board
  • 开始时间 开始时间
B

board

Unregistered / Unconfirmed
GUEST, unregistred user!
出错提示
adoquery1:commandtext does not return a result set!

说的什么意思啊?
 
UPDATE DELETE INSERT 都不会有返回的结果集,你可能SQL语句是这些吧
 
你是不是用Open时出错啊?
如果SQL不是SELECT的话,应使用EXECSQL
 
begin
AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.SQL.Add('update xsjwxxmm set xsmm='''+spskinedit1.Text+''' where xh='''+number+'''');
AdoQuery1.Open;
end
number是一个全局变量
 
把AdoQurey1.Open改成AdoQuery1.execsql
 
使用 ExecSQL , 不返回结果集。
 
那个出错提示是没有了,但是怎么sql语句好像没有作用啊,update没有成功啊!
怎么回事?
 
检查是否满足Where条件
 
AdoQuery1.SQL.Add('update xsjwxxmm set xsmm='''+spskinedit1.Text+''' where xh='''+number+'''');

应该改为:AdoQuery1.sql.add(''update xsjwxxmm set xsmm='+''''+spskinedit1.Text'+''''+'(空格)where xh='+''''+number+'''');
 
按照jenemery的方法改了,还是不行!
不知道是不是number这个全局变量没有传递过来?

number是string型
而在表中的xh字段是varchar型
 
S := 'update xsjwxxmm set xsmm= %s where xh=%s';
ADOQuery1.SQL.ADD(Format(S, [QoutedStr(spskinedit1.Text), QuotedStr(Number)]));
ADOQuery1.SQL.ExecSQL;
 
你的语句有问题!
 
tseug,按你的写的,出错了,出错提示如下
Undeclared identifier: 'QoutedStr'

 
uses Sysutils,还是老样子
出错了,出错提示如下
Undeclared identifier: 'QoutedStr'
 
老大:是QuotedStr不是QoutedStr
 
嗯,是QuotedStr不是QoutedStr
已经改过来了,编译没有出错,但是还是update没有成功!
晕,怎么回事啊?
 
你的表中到底有没有指定的 XH=Number???
 
表中有xh字段啊
number是一个全局变量,是在用户登录成功以后将用户输入的id赋给了number

现在update的时候出现xh=number是调用全局变量了,有错吗?
 
你用ShowMessage把ADOQuery1.SQL.Text显示一下看看
在ExecSQL之前
 
后退
顶部