iCAx开思工具箱
标题:
【讨论】UG中用ADO访问数据库搞的很郁闷
[打印本页]
作者:
深夜摔键盘
时间:
2004-8-30 11:35
标题:
【讨论】UG中用ADO访问数据库搞的很郁闷
引入MFC,数据库的ADO接口,程序完成后,运行时会出错。但是单步跟踪调试,又找不出错误!
譬如用ADO访问ACCESS时,与数据库连接没什么问题,但是想编程创建一个数据表时就会出现问题。调试时,单步跟踪,表的确被创建了。但是程序在运行时就报错了。
今天搞了一上午,症结所在还是没找到。还请各位指点!!!
作者:
深夜摔键盘
时间:
2004-8-30 11:42
代码应该没错误。以前在MFC程序中我调试过。
数据库连接没问题,创建表时,有问题!不得其解,恳请各位指教!!!!!
CoInitialize(NULL);
_ConnectionPtr m_pConnection;
m_pConnection.CreateInstance(__uuidof(Connection));
try
{
m_pConnection->Open("
rovider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb","","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败");
return ;
}
_variant_t RecordsAffected;
try
{
m_pConnection->Execute("CREATE TABLE new(PointId INTEGER,X DOUBLE,Y DOUBLE,Z DOUBLE,BoxId INTEGER)",
[$RecordsAffected,adCmdText)]
}
catch(_com_error e)
{
AfxMessageBox("创建表失败");
return ;
}
CoUninitialize();
作者:
深夜摔键盘
时间:
2004-8-30 17:11
作者:
深夜摔键盘
时间:
2004-8-30 22:34
已搞定!!!!!!
作者:
mizzle
时间:
2004-8-31 09:28
怎么搞定的,上来说说,大家也好学习一下
作者:
深夜摔键盘
时间:
2004-8-31 11:49
一个小错误
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb
一定要注意这个!!!!!test.mdb要有明确的路径。相对路径会引起混乱
作者:
fourwood
时间:
2004-8-31 22:31
test.mdb应该和DLL在同一个目录下吧?
作者:
深夜摔键盘
时间:
2004-9-1 10:49
在VC中打开UG进行调试时,test.mdb是与application和startup文件夹应该在相同目录中。
非调试状态下,打开UG,运行这段代码,test.mdb应该在Access的工作目录中(我的ACCESS工作目录是“我的文档"),此时如果不注意,就会产生错觉,以为test.mdb没有被创建,然后无论你怎样修改代码,运行程序,都会报错。如果你的异常报错搞的很详细的话,可能会豁然醒悟,否则,也可能会象我一样,搞一天也没头绪。
作者:
wgwang
时间:
2004-9-1 21:07
好,谢谢分享经验
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3