C++程序连接不上SQL2008数据库!请大侠,高手帮看看!

神的理想 神的理想 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
用SQL2008建立student库,其中有个stu_info表,表中有些数据,系统用的是administrator登录的XP professional,建立student数据库时是用自建的账号登录的。还有此程序是从网上下载的,我是个数据库新手,程序编译没问题,但是程序运行时,连接不上数据库,不知道是什么原因!
部分代码:

int main()
{
cout << "enter main\n ";
STU student;
::CoInitialize(NULL); // 初始化OLE/COM库环境 ,为访问ADO接口做准备

_RecordsetPtr m_pRecordset( "ADODB.Recordset");
_ConnectionPtr m_pConnection( "ADODB.Connection");
cout << "begin select\n ";
_bstr_t bstrSQL( "select * from stu_info "); //查询语句
char * query_cmd = "DELETE FROM stu_info WHERE sname = '本拉登' ";
cout << "enter try\n ";
try
{
// 创建Connection对象
m_pConnection.CreateInstance( "ADODB.Connection ");
// 设置连接字符串,必须是BSTR型或者_bstr_t类型
_bstr_t strConnect= "Provider=SQLOLEDB; Server=(local); Database=student; uid=zhouxicai; pwd=123456; ";
//若数据库在网络上则Server为形如(192.168.1.5,3340) 用户sa和密码123只是针对我的库
cout << "正在打开学生库\n "; //显示本句后,程序停顿。。后面的语句均没显示,过一会程序自动退出
m_pConnection->Open(strConnect, " ", " ",adModeUnknown);
cout << "打开学生库结束\n ";
if(m_pConnection==NULL) cerr<<"Lind data ERROR!\n ";
cout << "正在创建记录集对象\n ";
// 创建记录集对象
m_pRecordset.CreateInstance(__uuidof(Recordset));
cout << "创建记录集对象结束\n ";
...
...

程序自动退出后的输出信息:

“SQLdatebase.exe”: 已加载“C:\Program Files\Common Files\System\Ole DB\sqloledb.rll”,未使用调试信息生成二进制文件。
SQLdatebase.exe 中的 0x7c812afb (kernel32.dll) 处最可能的异常: Microsoft C++ 异常: 内存位置 0x0012f8ec 处的 _com_error。
“SQLdatebase.exe”: 已加载“D:\Program Files\Youdao\Dict4\WordStrokeHelper32.dll”,Cannot find or open the PDB file
线程 'Win32 线程' (0xe34) 已退出,返回值为 0 (0x0)。
线程 'Win32 线程' (0x820) 已退出,返回值为 0 (0x0)。
线程 'Win32 线程' (0x9ac) 已退出,返回值为 0 (0x0)。
程序“[1492] SQLdatebase.exe: 本机”已退出,返回值为 0 (0x0)。

运行时显示的错误
ERROR:[DBNETLIB][connectionOpen(connect()).]SQL Server不存在或拒绝访问。
原始代码出处:
http://www.yesky.com/277/1893277.shtml
补充:天都黑了,还没人回答~~
...全文

相关推荐

评论 7
收藏 已收藏
分享
返回顶部
神的理想
数据库 4,017 成员 39,805 内容