在程序中使用dsn时完全可以实现链接,如下代码:
m_DBCnt.CreateInstance(__uuidof(Connection));
m_DBCnt->ConnectionString = "DSN=MyDS;UID=sa;PWD=";
m_DBCnt->Open("","","",-1);
但是换成了
m_DBCnt->ConnectionString ="PROVIDER=SQLOLEDB.1;Persist Security Info=False; User ID=sa; password=; Data Source=YOUU;Data Catalog=RMS";
m_DBCnt->Open("","","",-1);
//m_DBCnt->Open("Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;password=;Data Catalog=RMS;Data Source=YOUU","","",-1);
就会出错,IDispatch error #3127
是什么问题呢?
难道是系统问题???
用ado想实现一个对sql server数据库快速的一个访问就这样麻烦吗???
大概还是ConnectionString不对,把data catalog 换成Initial Catalog试一下
连接串换成下面这个应该可以。最好还是先绑定数据库,然后COPY连接串。
Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=YOUU;Data Source=RMS
m_DBCnt->ConnectionString ="PROVIDER=SQLOLEDB;Persist Security Info=False; User ID=sa; password=; Initial Catalog=YOUU;Data Catalog=RMS";
是连接本机的sql,还是远程的sql?
将YOUU换成机器的ip地址试试
不会吧??
你用我的方法还没有搞定吗??
这个方法你到底试了没有???
用ADO控件绑定连接,选连接字符串,
如果测试通过后拷贝连接字符串替换你的程序中连接代码部分
OLEDB的连接字符串本来就是这样的,是你自己写错了
up
up
接分快乐!!!