我在mfc的对话框中的程序中加如代码;连接到我自己的机器上的sql数据库上,数据库的名字是test
对应的表 是users 以下是代码
BOOL CMydabaseDlg::OnInitDialog()
{
//
_ConnectionPtr con;
con.CreateInstance(L"Adodb.Connnection");
con->Open(_bstr_t("PROVIDER=SQLOLEDB;DATA SOURCE=test;USER ID=Administrator;PASSWORD=19831215"),_bstr_t(""),_bstr_t(""),-1);
//。。
con->Execute("Create Database zzzz",0,-1);
CDialog::OnInitDialog();编译结果 出错:
run time error
对应的表 是users 以下是代码
BOOL CMydabaseDlg::OnInitDialog()
{
//
_ConnectionPtr con;
con.CreateInstance(L"Adodb.Connnection");
con->Open(_bstr_t("PROVIDER=SQLOLEDB;DATA SOURCE=test;USER ID=Administrator;PASSWORD=19831215"),_bstr_t(""),_bstr_t(""),-1);
//。。
con->Execute("Create Database zzzz",0,-1);
CDialog::OnInitDialog();编译结果 出错:
run time error
#import "c:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")
另外建议你使用我的方法,咱都是初学的新手,别急,慢慢来,我是这样实现的
CoInitialize(NULL);
_ConnectionPtr pCon(__uuidof(Connection));
_RecordsetPtr pRst(__uuidof(Recordset));
pCon->ConnectionString=连接字符串;
pRst = pCon->Execute("select * from 表名",NULL,adCmdText);
.....
CoUninitialize();
注意一定要初始化com库的,就是CoInitialize(NULL);在最后还要CoUninitialize();一下
我这样的是能连承接成功的,建议参考一下 。
另外,那个sql数据库怎么设置用户 啊,我感觉好象是用户名字出了问题;
代码如下:::::
_ConnectionPtr pCon(__uuidof(Connection));
_RecordsetPtr pRst(__uuidof(Recordset));
pCon->ConnectionString= _bstr_t("PROVIDER=SQLOLEDB;DATA SOURCE=test;USER ID=sa;PASSWORD=");
pRst = pCon->Execute("Create Database zzzz",0,-1);run time error
DATA SOURCE是SQL SERVER服务器的名称。
你确认没错?
test是数据源的名字,这个肯定没有错的
提示你:
run time error
连接字符串:m_StrServer="Provider=SQLOLEDB;Data Source=192.168.0.254;Initialatalog=Sdy;User ID=sa;Password=";
开始连接服务器:
HRESULT hr;
_ConnectionPtr m_db;
_RecordsetPtr m_set;
hr=m_db.CreateInstance(__uuidof(Connection));
if(hr!=S_OK)
{
return FALSE;
}
hr=m_set.CreateInstance(__uuidof(Recordset));
if(hr!=S_OK)
{
return FALSE;
}
try
{
m_db->Open((_bstr_t)m_StrServer,"","",adModeUnknown);
}
catch(_com_error e)
{
#ifdef _DEBUG
AfxMessageBox("Error:connect server ! ");
#endif
CString Error = e.ErrorMessage();
#ifdef _DEBUG
AfxMessageBox(Error);
#endif
IsOnline=FALSE;
return FALSE;
}
catch(...)
{
#ifdef _DEBUG
AfxMessageBox("ADO发生错误!");
#endif
IsOnline=FALSE;
return FALSE;
}
能不能把你关与sql的 配置给我说一下啊
con.CreateInstance(L"Adodb.Connnection");
Connection 多了一个n