初学者的简单问题请教(20分)

  • 主题发起人 主题发起人 heaven21cn
  • 开始时间 开始时间
H

heaven21cn

Unregistered / Unconfirmed
GUEST, unregistred user!
q:=tquery.Create(nil);
q.DatabaseName:='test';
q.SQL.Add('insert into book_info(tsbh) values(:b_no)');
q.ParamByName('b_no').AsString:=nobox.Text;
q.ExecSQL;
提示Operation not applicable,调试的时候一到q.ExecSQL就弹出错误对话框
 
可能性很多,你先CLEAR一下.
我一般用存储过程来操作.
或者q.insert,然后edit.setfocus.也可以.
 
仅从这段代码看应该没什么问题,是不是你delphi的版本有问题? 或是有其他代码导致的?
 
我代码clear过了也是同样的问题,本以为简单的代码很容易搞定,
没想到一开始就遇到这么大的麻烦
 
我在调试的时候加了一段
strSQL:=q.text
strSQL显示的是'insert into book_info(tsbh) values(?))';
values的显示是'?'显然没有把参数值传递进去,而我将
q.SQL.Add('insert into book_info(tsbh) values(:b_no)');
给为
q.SQL.Add('insert into book_info(tsbh) values(test)');不使用参数,则
调试显示的是insert into book_info(tsbh) values(test);
不知道什么原因导致参数没有传进去

 
问题已经找到了!
 
后退
顶部