ADOQuery出错问题,谁遇到过?

558047 2003-06-15 09:44:38
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString SqlStr;
SqlStr=" update ftXs set dwB='22222' ";
SqlStr+=" where number1='03-001' ";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(SqlStr);
ADOQuery1->ExecSQL(); //

}
//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)
{
ADOQuery1->Close();
ADOQuery1->SQL->Add("select * from ftxs ");
ADOQuery1->Open();
ADOQuery1->Close();
}
//---------------------------------------------------------------------------
执行Click事件之后提示出错
"Accessviolation at address 1F487CAB in module 'msado15.dll'. write of
address 01720004"
如果把FormCreat事件里面的代码改成

AnsiString SqlStr;
SqlStr=" update ftXs set dwB=45345";
SqlStr+=" where number1='03-001' ";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(SqlStr);
ADOQuery1->ExecSQL(); //
则可以顺利执行,但是Click事件代码可以执行,但是数据库的数据没有更新
在线等待
...全文
77 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
aluxII 2003-06-15
  • 打赏
  • 举报
回复
第一答案:同上。
第二答案:如果你用ADO2.7,你最好用两个ADOQuery。一个作查询,一个作储存。
nightfallrove 2003-06-15
  • 打赏
  • 举报
回复
把在FormCreate里面的代码全部移开来试试,
你那个错误应该是在表关闭或表没有创建时对其操作造成的,
把FormCreate里面的代码放到Show里面看有没有问题
还有,用SQL UPDATE是不是要用Post()?
阿鹏兄 2003-06-15
  • 打赏
  • 举报
回复
1。你启动trans了吗?
2。http://expert.csdn.net/Expert/TopicView1.asp?id=1545572
极速小王子 2003-06-15
  • 打赏
  • 举报
回复
不知道,占个坑!
558047 2003-06-15
  • 打赏
  • 举报
回复
我的操作系统是2000professinol,是不是需要安装Ado的什么东西?

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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