C#数据库连接出错  未处理的SqlException
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;namespace deletedata
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }        private void Form1_Load(object sender, EventArgs e)
        {
           // string connectionString = "server = localhost; uid = sa; pwd = sa; database = data;";
            SqlConnection conn = new SqlConnection("server =localhost; uid =sa; pwd =sa; database =data;");            conn.Open();            MessageBox.Show("连接成功");            conn.Close();        }
    }
}求求各位了!在线等啊

解决方案 »

  1.   

    在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。这不是提示你了。看看SQL Server 2005是否允许远程连接,防火墙设置,以及 SQL Server 是否启用 TCP/IP 协议。最后看看 SQL Server 实例明是否正确,服务器是否正常运行。
      

  2.   

    解决方法
    http://www.google.com/search?q=SQL+Server+%E4%B8%8D%E5%85%81%E8%AE%B8%E8%BF%9B%E8%A1%8C%E8%BF%9C%E7%A8%8B&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:zh-CN:official&client=firefox-a
      

  3.   

    这种情况,一般首先考虑是连接字符串没写对,检查登录名、密码(怀疑密码不对,可能为空,你没设过就为空)、数据库名
    写成这样试试:
    server =.; uid =sa; pwd=; database =data
      

  4.   

    "server =localhost; uid =sa; pwd =sa; database =data;"空格的都去了试试另外,防火墙端口是否限制了; 另外,把动态端口禁用了另外,启用SQL Browsing服务
      

  5.   

    试着把server=localhostG改成Data Source=IP
      

  6.   

    1)服务有没有开
    2)打开数据库企业管理器,Server:localhost  用sa能否连接数据库
    3)以上两步能连接,基本上程序也是没问题
      

  7.   

    连接字符串有问题,这是我正确使用的:
    "Data Source=(local);Initial Catalog=utscadadb;Integrated Security=SSPI; User Id=sa;Password=ut2001;"
      

  8.   

    你到外围连接里边看看 对应的服务,有一个选tcp/ip的
    楼上已经基本都说清楚了
      

  9.   

    点开始-----程序-------Microsoft Sql Server2005------配置工具-------SQL Server外围应用配置器-----服务和连接的外围应用配置器--------MSSQLSERVER-----Database Engine-------远程连接------把右边的选择改为本地连接和远程连接
      

  10.   

    "server =localhost; uid =sa; pwd =sa; database =data;"
    少了这个Persist Security Info=True
    "server =localhost;Persist Security Info=True; uid =sa; pwd =sa; database =data;"
      

  11.   

    string ConStr = @"Data Source=(local)\TOPGY;Initial Catalog=【要连接的数据库名称】;Integrated Security=True";
    SqlConnection gy = new SqlConnection(ConStr);
    gy.Open();       
    我用的是SQL2008   那个TOPGY是服务器名称                                                                     
      

  12.   

    开始》运行》net start mssqlserver
    应该是sqlserver服务关闭着。
      

  13.   

    server =localhost 改成 server =.\\ 或是server=.\\SQLEXPRESS