用vc++6.0 ADO控件连接SQL server 2000 数据库,只能在自己的电脑上运行。因为设置ADO属性时把服务器名称设为了自己服务器的名称。只有这样才能与数据库连接成功。即使设为Server=127.0.0.1也是不能用的,系统显示访问的数据库不存在或拒绝访问。请问有什么方法把数据库设为一个比较通俗的地址,以提高其可移植性吗?代码如下:
// 初始化—连接数据库
void ADOConn::OnInitADOConn()
{
// 初始化OLE/COM库环境
::CoInitialize(NULL);
try
{
// 创建Connection对象
m_pConnection.CreateInstance("ADODB.Connection");
// 设置连接字符串,必须是BSTR型或者_bstr_t类型
_bstr_t strConnect = "Provider=SQLOLEDB; Server=F7D7AEAD3F2949F;Database=Store; uid=sa; pwd=sa;";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
// 捕捉异常
catch(_com_error e)
{
// 显示错误信息
AfxMessageBox(e.Description());
}
}主要就是 Server=F7D7AEAD3F2949F 的问题,可是我却不知道要如何更改。
希望哪位高人能够指点一下,非常急,谢谢!
// 初始化—连接数据库
void ADOConn::OnInitADOConn()
{
// 初始化OLE/COM库环境
::CoInitialize(NULL);
try
{
// 创建Connection对象
m_pConnection.CreateInstance("ADODB.Connection");
// 设置连接字符串,必须是BSTR型或者_bstr_t类型
_bstr_t strConnect = "Provider=SQLOLEDB; Server=F7D7AEAD3F2949F;Database=Store; uid=sa; pwd=sa;";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
// 捕捉异常
catch(_com_error e)
{
// 显示错误信息
AfxMessageBox(e.Description());
}
}主要就是 Server=F7D7AEAD3F2949F 的问题,可是我却不知道要如何更改。
希望哪位高人能够指点一下,非常急,谢谢!
_bstr_t strConnect = "Provider=SQLOLEDB; Server=F7D7AEAD3F2949F;Database=Store; uid=sa; pwd=sa;";改成_bstr_t strConnect = "Driver={SQL Server};DataBase=db;Server=192.168.0.190;uid=sa;pwd=sa;";红色部分IP,根据自己的情况修改.
_bstr_t strConnect = "Driver={SQLServer};DataBase=db;Server=192.168.0.190;uid=sa;pwd=sa;";
m_pConnection->CommandTimeout=20;
m_pConnection->Open("","","",adConnectUnspecified);
在目录下建立TXT文档 改名为Conn.udl 双击打开配置服务器就好
简单 方便
改成Server=(local),但需要 用另一种方法,用不到用户名和密码,测试成功。此时运行成功,但只能出现第一个界面,而不能继续运行。说未和信任数据库连接或是无效授权。实在不知道是哪里的问题,明明测试成功了。
Server=192.168.0.190是本机数据库服务器的地址吧, 可是我不知道要怎么获得啊...为什么设成Server=127.0.0.1不能用呢?
看了一下 4楼的跟我说的一样
那个链接点进去
也就是程序里 如我6楼那样写的
根据自己的数据库类型配置udl
这里
应该选倒数第五项 for SQL Server