报错[dbnetlib][connection open]sql server不存在或拒绝访问

来源:互联网 发布:知乎 樱桃 3000 编辑:程序博客网 时间:2024/06/05 06:27

    最近在做一个药品配伍查询的软件,利用vc++访问数据库的ADO技术,数据库采用SQL Server 2005。一切都是摸索着前进,前路的坎坷是可想而知的,现将遇到的问题和解决方法记录下来,以备将来回顾。

    第一个遇到的问题是参考例程运行报错[dbnetlib][connection open]sql server不存在或拒绝访问。

   主要是两个原因。

   1.SQL Server 2005没有进行相关配置

     http://wenku.baidu.com/view/b8fd06d8ce2f0066f53322fa.html

     http://wenku.baidu.com/view/ec9662db6f1aff00bed51e81.html

     http://apps.hi.baidu.com/share/detail/2788990

     我是把能设的都设置上了,采用SQL Server身份验证,登录名为sa,无密码。

   2.连接字符串有误

     (1)新建一个文本文档,命名为TestSQL.UDL;

     (2)双击打开,出现如下对话框,点击“提供程序”,选中“Microsoft OLE DB Provider   

         for SQL Server”,点击下一步;

 

     (3)选择服务器,使用指定的用户名和密码,选择数据库,测试连接;

     (4)如果成功,点击确定,将本文件放入工程文件夹中。

      在VC代码中,连接数据库部分代码:

      m_pConnection.CreateInstance(_uuidof(Connection));
      m_pConnection->ConnectionString="File Name=TestSQL.UDL";//连接字符串
      m_pConnection->Open("","","",adConnectUnspecified);

[dbnetlib][conen]sql server不存在或拒绝访问