VC++6.0利用ADO对象访问数据库,数据库由SQL Server2005生成,但总是连接不正确
跪拜请求帮忙解决这个问题吧:关于ADO我理解了一些,但SQL我不熟,只是用它建立了数据库文件.MDF,首先我想问这个数据库我该放在什么位置?和VC程序放在一起吗?...
跪拜请求帮忙解决这个问题吧:关于ADO我理解了一些,但SQL我不熟,只是用它建立了数据库文件.MDF,首先我想问这个数据库我该放在什么位置?和VC程序放在一起吗?
展开
4个回答
展开全部
MDF放在哪里都可以
在连接数据库的时候确定位置就行.
比如 _bstr_t strConnect= "Provider=SQLOLEDB;Server=(local);Database=student; uid=sa; pwd=123;";
用SQL server ADO连接 就不用设置ODBC...打开SQL服务以后 及能连接到数据库..
在连接数据库的时候确定位置就行.
比如 _bstr_t strConnect= "Provider=SQLOLEDB;Server=(local);Database=student; uid=sa; pwd=123;";
用SQL server ADO连接 就不用设置ODBC...打开SQL服务以后 及能连接到数据库..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2016-01-07
展开全部
妈妈对你说:”你今晚不能看电视.“
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个不是一句两句可以说清楚的
给你语句还有其他工作要做
比如用ADO连接数据源前的准备工作
1)在头文件中引入相应的库文件(一般放在StdAfx.h中)。
……
#import "c:\Program Files\Common Files\System\ADO\msado15.dll"
no_namespace rename("EOF","_EOF")
……
注意:为了避免类型库文件中EOF与系统定义的EOF相关的名称相冲突,所以使用rename将其重命名。
2)初始化COM环境(一般放在函数BOOL CTheApp::InitInstance()里面)。
CoInitialize(NULL);//初始化COM环境
还有Connection与Recordset
因为在使用数据库时,首先会打开数据库,然后再对数据库中的某个数据表进行操作。ADO访问数据库时也要遵循这个规矩。Connection对象代表了打开与数据源的连接。而Recordset对象表示的是来自基本表或命令执行结果的记录集。在使用Connection与Recordset之前,需要创建它们的实例:
_ConnectionPtr cnn=NULL;
cnn.CreateInstance(__uuidof(Connection));
_RecordsetPtr rst=NULL;
rst.CreateInstance(_uuidof(Recordset));
完全可以把cnn及rst看成是一个对象指针来使用。而不用考虑它的COM对象的实例。
声明一个Connection对象实例后,就可以使用这个对象实例来连接数据库了。
比如cnn-ConnectionString="uid=admin;pwd=111;DRIVER=;
DBQ=khzy.mdb;"; //连接ACCESS数据库。
cnn-Open(L"",L"",L"",adConnectUnspecified);
还有具体的
还是建议你先看书
慢慢实践
不愿意问老师
可以问同学
同学间还是有高手的
给你语句还有其他工作要做
比如用ADO连接数据源前的准备工作
1)在头文件中引入相应的库文件(一般放在StdAfx.h中)。
……
#import "c:\Program Files\Common Files\System\ADO\msado15.dll"
no_namespace rename("EOF","_EOF")
……
注意:为了避免类型库文件中EOF与系统定义的EOF相关的名称相冲突,所以使用rename将其重命名。
2)初始化COM环境(一般放在函数BOOL CTheApp::InitInstance()里面)。
CoInitialize(NULL);//初始化COM环境
还有Connection与Recordset
因为在使用数据库时,首先会打开数据库,然后再对数据库中的某个数据表进行操作。ADO访问数据库时也要遵循这个规矩。Connection对象代表了打开与数据源的连接。而Recordset对象表示的是来自基本表或命令执行结果的记录集。在使用Connection与Recordset之前,需要创建它们的实例:
_ConnectionPtr cnn=NULL;
cnn.CreateInstance(__uuidof(Connection));
_RecordsetPtr rst=NULL;
rst.CreateInstance(_uuidof(Recordset));
完全可以把cnn及rst看成是一个对象指针来使用。而不用考虑它的COM对象的实例。
声明一个Connection对象实例后,就可以使用这个对象实例来连接数据库了。
比如cnn-ConnectionString="uid=admin;pwd=111;DRIVER=;
DBQ=khzy.mdb;"; //连接ACCESS数据库。
cnn-Open(L"",L"",L"",adConnectUnspecified);
还有具体的
还是建议你先看书
慢慢实践
不愿意问老师
可以问同学
同学间还是有高手的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询