为虾米会酱子捏捏捏捏捏捏捏捏捏捏捏捏 在线等待?

生活简单到无聊 2010-06-30 10:56:38

String strSQL="insert "+ attribute + " into RF values (" + value+ " )";
ADOQuery1->Active=false;
ADOQuery1->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + GetCurrentDir()+ "\\test.mdb" + ";Persist Security Info=False";
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(strSQL);
ADOQuery1->ExecSQL();

报的这样的错:project project2.exe raised exception Class Eole Eception with message "CoInitialize尚未被呼叫"..
...全文
104 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
ThinkHand 2010-06-30
  • 打赏
  • 举报
回复
楼上回答的都有理,建议楼主遇到问题先跟踪调试一下。跟踪一下你动态生成的SQL跟正常的SQL是否有差异。
http://www.w3school.com.cn/sql/sql_insert.asp 这个网址可以让你查一下标准的SqL语法是怎样的。因为我还没有用过 insert xxx into table values(tmp1)这样的语法结构,也不敢妄断你的语法是错误的。呵呵!
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 ccrun 的回复:]
如果该字段是字符串的,需要这样:
String strSQL="insert into RF(" + attribute + ") values('" + value+ "')";
[/Quote]
所有字段都是字符串
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ovoovo 的回复:]
引用 6 楼 ccrun 的回复:
C/C++ code
String strSQL="insert "+ attribute + " into RF values (" + value+ " )";

换成:

C/C++ code
String strSQL="insert into RF(" + attribute + ") values(" + value+ ")";

……
[/Quote]
还是一样的.....晕..以前同事写这个时候...都没出过这个问题...
ccrun.com 2010-06-30
  • 打赏
  • 举报
回复
如果该字段是字符串的,需要这样:
String strSQL="insert into RF(" + attribute + ") values('" + value+ "')";
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ccrun 的回复:]
C/C++ code
String strSQL="insert "+ attribute + " into RF values (" + value+ " )";

换成:

C/C++ code
String strSQL="insert into RF(" + attribute + ") values(" + value+ ")";
[/Quote]
OK..我去试试....
ccrun.com 2010-06-30
  • 打赏
  • 举报
回复
String strSQL="insert "+  attribute + " into RF values (" + value+ " )";

换成:
String strSQL="insert into RF(" + attribute  + ") values(" + value+ ")";
  • 打赏
  • 举报
回复
ADOQuery1->ExecSQL();

这句的时候又报错....project project2.exe raised exception Class Eole Eception with message"提供不一致或者不完全的资讯导致参数物体不适当地被拒"
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ccrun 的回复:]
问题解决没?
[/Quote]
还没去试...我去试试看...帅锅别走开...广告之后马上回来...
ccrun.com 2010-06-30
  • 打赏
  • 举报
回复
问题解决没?
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ccrun 的回复:]
莫非你是Dll和Console工程?

提示已经很清楚了,因为ADO也是COM,需要调用CoInitialize来初始化COM,结束的时候反初始化。

程序开始的时候:
::CoInitialize(NULL);
结束的时候:
::CoUninitialize();
[/Quote]
没有...只是用这个空间存储一些测试数据...在
ADOQuery1->SQL->Add(strSQL);
出现这个报错..
ccrun.com 2010-06-30
  • 打赏
  • 举报
回复
莫非你是Console工程?

提示已经很清楚了,因为ADO也是COM,需要调用CoInitialize来初始化COM,结束的时候反初始化。

程序开始的时候:
::CoInitialize(NULL);
结束的时候:
::CoUninitialize();

13,874

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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