[问题] C++透过ADO连线到SQL Server的问题

楼主: kev72806 (Taipei 101)   2017-07-17 17:23:50
开发平台(Platform): (Ex: Win10, Linux, ...)
Windows 10 64位元
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
VS 2013 VC++
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
ado\msado15.dll
问题(Question):
建好_ConnectionPtr之后,使用open方法连线到本地端架设的SQL Server会跳出例外,我测试的程式码如下:nitialize(NULL);
喂入的资料(Input):
主要的参数在Open那边,DB帐号跟密码还有IP跟Port Number都如指令所述:
Open("Provider = SQLDB; Data Source = 127.0.0.1, 1433;", "MyDB", "qazxswedc", adConnectUnspecified);
预期的正确结果(Expected Output):
预期应该会执行到最下面的 cout。
错误结果(Wrong Output):
执行并输出 connect exception。
程式码(Code):(请善用置底文网页, 记得排版)
::CoInitialize(NULL);
_ConnectionPtr pConn = NULL;
if (S_OK != pConn.CreateInstance("ADODB.Connection"))
{
cout << "create instance failed..." << endl;
}
try
{
HRESULT hr = pConn->Open("Provider = SQLDB; Data Source = 127.0.0.1,
1
if (FAILED(hr))
{
cout << "connect failed!" << endl;
}
}
catch (_com_error e)
{
cout << "connect exception..." << endl;
}
cout << "connect succ!" << endl;
补充说明(Supplement):
之前有听学长说 c++ 连 SQL 不太好使用,可是目前被专案卡死,只能使用C++撰写,也只查询到ADO可以做到这件事情,若是有正确的使用方法或是其他连到SQL的
方法也不吝请教,谢谢 !!
作者: Hazukashiine (私は幸せです)   2017-07-17 18:52:00
要是 C++ 连 SQL 不好用 要不要考虑用 C 连数据库XD
作者: Schottky (顺风相送)   2017-07-17 21:54:00
推楼上
作者: uranusjr (←這人是超級笨蛋)   2017-07-17 23:08:00
他学长的意思应该是 C++ 连“SQL Server”不好用吧 XD

Links booklink

Contact Us: admin [ a t ] ucptt.com