VC9 (vs2008) 开发MFC程序
使用SQL SERVER作为数据库在VC的以前版本中使用过ADO,通过IMPORT引入的ADOADO.NET是ADO的升级,不知道现在如何在VC工程中引入ADO.NET?此外可以在VC9中直接使用NAMESPACE吗?如 using namespace System::Data::SqlClient
使用SQL SERVER作为数据库在VC的以前版本中使用过ADO,通过IMPORT引入的ADOADO.NET是ADO的升级,不知道现在如何在VC工程中引入ADO.NET?此外可以在VC9中直接使用NAMESPACE吗?如 using namespace System::Data::SqlClient
解决方案 »
- 为什么用UNICODE方式写的网页下载程序得到的是乱码呢,而ASCII正确?????
- 按钮的组合框形式如何使它的矩形的边角变成圆滑效果???
- 关于TREE
- 请问:[MS SQL Server]Error #3105 解析得到的定位器无效,这是为什么?
- 关机时怎样关掉电源
- 请问如何打印基于form的SDI中FORM上的控件的内容和CHART图表呢?
- 得到edit控件的句柄,如何用SendMessage模拟回车键按下?
- 如何在OCX的view类中自动执行OnInitialUpdate函数
- 同一个dll,在不同的工程中调用,一个成功,一个失败
- listctrl Icon模式下图标显示不正常,请问这是为什么啊?
- VC动态创建SQL数据库表
- 请教P点关于(P1, P2)直线的镜像坐标的计算公式
http://www.vckbase.com/document/viewdoc/?id=1215
http://www.vckbase.com/document/viewdoc/?id=610
if(FAILED(pConn.CreateInstance("ADODB.Connection")))
{
AfxMessageBox(_T("连接CreateInstance错误"));
return;
}
CString connstr = _T("initial catalog=mydb;data source=localhost;integrated security=true");
CString mysql = _T("insert into TextInfo(TextTitle,TextContent) values(N'");
mysql += text_title;
mysql += "',N'";
mysql += text_content;
mysql += "')";_variant_t variant_connstr(connstr);
_bstr_t bstr_connstr(variant_connstr);if(FAILED(pConn->Open(bstr_connstr,"","",-1))) //运行到此处就异常,不知道为什么???
{
AfxMessageBox(_T("数据库连接打开错误"));
return;
}pConn->Close();
try
{
//你的代码
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
}
看看能否捕获异常??另外,你在if(FAILED(pConn.CreateInstance("ADODB.Connection"))) 之前执行了CoInitialize(NULL);的吗?
try
{
//你的代码
}
catch(_com_error &e)
{
AfxMessageBox(e.Description());
}
看看能否捕获异常??另外,你在if(FAILED(pConn.CreateInstance("ADODB.Connection"))) 之前执行了CoInitialize(NULL);的吗?
HRESULT hr = pConnection.CreateInstance("ADODB.Connection");LPCSTR strconnect = "provider=sqloledb;initial catalog=Semantic;data source=(local);Persist Security Info=False;integrated security=true;uid="";pwd=""";
if(SUCCEEDED(hr))
{
try
{
pConnection->Open(strconnect,"","",NULL);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
}捕捉到的错误信息是:
多步OLE DB操作产生错误。如果有可能,请检查每个OLE DB状态值。没有工作被完成。数据连接都打不开,很郁闷~~~
目前因为数据库在同一个机器上 , 所以就直接使用WINDOWS验证方式修改为sqloledb.1也是同样的错误
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Semantic;Data Source=(local);
按照这个修改出现错误:
[dbnetlib][connection open]sql server不存在或拒绝访问尝试将local改为127.0.0.1结果错误变为:
[DBNETLIB][ConnectionOpen (PreLoginHandshake()).]一般性网络错误。请检查网络文档。
太郁闷了~~~
1.在任意文件夹新建一个文本文件,把后缀名从txt改成udl
2.双击打开这个文件,按提供生成连接字符串
3.用记事本打开这个文件,把其中的连接字符串用来连接数据库看看能不能成功