快挂了都,总是不行,觉得是连接字符串的问题,代码如下,在stdafx.h里已经添加了
#import指令导入ADO了
然后变了一个很小的MFC对话框程序,就是按钮按下后,表格空间里显式我访问的数据
按钮的消息响应代码如下
CoInitialize(NULL);//初始化COM
_ConnectionPtr m_pCon;
_RecordsetPtr m_pRst;
m_pCon.CreateInstance("ADODB.Connection");
m_pRst.CreateInstance("ADODB.Recordset");
m_pCon->ConnectionString="Provider=SQLNCLI.1;Password=自设密码;Persist Security Info=True;User ID=sa;Initial Catalog=MYSQLDB;Data Source=Emplorees";
m_pCon->Open("","","",adConnectUnspecified);//打开数据库连接,此处崩溃
m_pRst=m_pCon->Execute("SLECT * FROM Emplorees",NULL,adCmdText);
while (!(m_pRst->dbsEOF))//#import指令中rename了EOF和dbsEOF
{
((CListBox*)GetDlgItem(IDC_LIST1))->AddString((_bstr_t)m_pRst->GetCollect("Emp_name"));//表单空间的ID是IDC_LIST1
m_pRst->MoveNext();
}
m_pRst->Close();
m_pCon->Close();
m_pRst.Release();
m_pCon.Release();
CoUninitialize();
程序编译没问题,能跑,但是就是点击那个查询按钮就崩溃了,应该是连接字符串问题,关键是我不知道怎么弄了啊,按照网上的,改了很多个连接字符串的写法了,就是不行,求指导!
或者贴一段自己VS2010能够运行的代码,例如访问自带的实例数据库中pub中内容的,这样代码拿来我可以试着运行一下。
先就不考虑封装的问题了啊,先能访问数据库就行!
各位好心人帮帮忙!
VS2010中MFC连接SQL SERVER 2005的问题
答案:2 悬赏:70 手机版
解决时间 2021-02-03 03:17
- 提问者网友:风月客
- 2021-02-02 21:33
最佳答案
- 五星知识达人网友:想偏头吻你
- 2021-02-02 23:07
m_pCon->ConnectionString="Provider=SQLNCLI.1;Password=自设密码;Persist Security Info=True;User ID=sa;Initial Catalog=MYSQLDB;Data Source=Emplorees";
有问题
末尾处,Data Source=Emplorees应该是你注册的机器名字。例如计算机名称,ip地址什么的。
initial Catalog=MYSQLDB;这里应该是数据库的名字,当然也许你就是这个名字。检查一下。
这是几个典型连接数据库的字符串,你参考一下,c#的:
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;
Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True;
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
有问题
末尾处,Data Source=Emplorees应该是你注册的机器名字。例如计算机名称,ip地址什么的。
initial Catalog=MYSQLDB;这里应该是数据库的名字,当然也许你就是这个名字。检查一下。
这是几个典型连接数据库的字符串,你参考一下,c#的:
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;
Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
Server=myServerName\theInstanceName;Database=myDataBase;Trusted_Connection=True;
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
全部回答
- 1楼网友:轻熟杀无赦
- 2021-02-02 23:42
操作如下:
sqlexpress服务开启或者设置为自动启动.
连接字符串如下:data source=.\sqlexpress;attachdbfilename=|datadirectory|\test.mdf;integrated security=true;user instance=true
|datadirectory|代表app_data数据文件夹相对路径.
比如test.mdf数据库需要放在app_data文件夹内这样就是相对路径.如果选择ms server 数据库文件就是选择数据库的绝对路径了 。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯