“观千剑而后视器, *** 千曲而后晓声。”——《文心雕龙》
最近在学C++一个框架——MFC,犯难了,搞了一周,阅读了不下百篇博主的文章,还询问了老师,重装了VS(甚至2017,2019,2022装了一遍)与SQL server,借了室友的两台电脑,终于把问题解决了!!!现在把问题整理,分享给大家,希望大家不要重蹈我的覆辙。
-
第一类问题也是最低级的问题,查询语句的字符串里面的字段与数据库表里面的字段是否一样,看一下下面这位同学:
-
第二类问题是SQL Server设置的问题:
2.1 SQL server进程有没有打开
2.2 是不是Windows与SQL server双重身份验证
2.3 是不是该实例下的sa登录(大部分同学应该不会出现该问题),见下图
如果一台服务器存在多个实例名,数据源上要加上实例名。那么我们的最后的问题就来了,就是关于连接数据库的时候,连接语句字符串的问题。
3.第三类问题连接语句问题:
CString str = _T("Provider=SQLOLEDB.1;"
"Password=123;"
"Persist Security Info=True;"
"User ID=sa;"
"Initial Catalog=HomanSys;"
"Data Source=LAPTOP-5CSJ9AC0\SQLEXPRESS"
);
m_pCon->Open(_bstr_t(str),_bstr_t(_T("")),_bstr_t(_T("")),adConnectUnspecified);
带实例名一定要记得带双反斜线!!!还有就是登录名、密码、数据库与SQL server里面的对不对的上。
最后就是关于MFC结构的理解了:
老式的结构有stdafx.h头文件,而我们采用pch.h来代替它帮助我们引入ado组件
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")
然后再在XX.cpp的InitInstance()函数下初始化我们的COM组件。
最后添加ADOconnection类,目的是每次对数据库进行 *** 作时直接调用即可,不用每次都重新把代码写一遍。
大体整理总结了一下其结构:
最后就是MFC 组件以及底层的问题,它是微软的基础类库,现阶段不需要深究,遇到相应的数据类型可以查一下,毕竟封装的很好了,直接拿过来用就好了!
最后以庆祝共青团成立100周年大会上,习总书记讲话里面提到的一句话结束本文:“人生万事须自为,跬步江山即寥廓。”
下期见!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)