怎么都连接不上,已经困扰了两天了语句如下:调用命名空间:
    using System.Data.SqlClient;链接代码:
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text.Trim() == "")
            {
                label2.Text = "请输入数据库名称!";
            }
            else
            {
                try
                {
                    string db = "server=.;database=" + textBox1.Text.Trim() + ";uid=sa;pwd=";
                    SqlConnection conn = new SqlConnection(db);
                    conn.Open();
                    if (conn.State == ConnectionState.Open)
                    {
                        label2.Text = "数据库【" + textBox1.Text.Trim() + "】已连接";
                        textBox1.Text = "";
                    }
                }
                catch
                {
                    label2.Text = "数据库连接失败或未找到数据库【" + textBox1.Text.Trim() + "】";
                }
            }
        }SQL2005设置:SQL Server 正在运行
SQL Server Browser 正在运行
SQLEXPRESS 的协议
    Shared Memory 已启用
    Named Pipes 已启用
    TCP/IP 已启用
    VIA 已禁用
SQL Native Client 配置
    Shared Memory 已启用 顺序1
    TCP/IP 已启用 顺序2
    Named Pipes 已启用 顺序3
    VIA 已禁用
服务和连接的外围应用配置器
    Database Engine
        远程连接:同时使用TCP/IP和named pipes
SQL Server Management Studio Express
    服务器身份验证:SQL Server 和 Windows 身份验证模式
    db_lvshuang数据库建立正常
    登录名 sa 启用,密码为空,允许连接数据库引擎提示错误
    conn.open()句提示:
        在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致失败。(provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)

解决方案 »

  1.   

    如果字符串没有写错的话
    试试这个
    Data Source=.;User ID=sa;Password=;Initial Catalog=" + textBox1.Text.Trim() + ";Persist Security Info=true
      

  2.   

    1、sql2005开启远程连接功能
    打开MSSQLSERVER节点下的Database Engine节点,选择"远程连接",接下来建议选择”同时使用TCP/IP和named pipes ”,确定后,重启数据库服务.
    2、如果已经设置了 windows与SQL Server混合验证且启用了sa帐户
        在开始菜单中的"SQL SERVER 2005"->"Configuration Tools"->"SQL SERVER Configuration Management"中将"SQL SERVER Clinet"中的命名管道(named pipes)打开,然后重启一下SQL SERVER的服务
      

  3.   

    新设立帐户和密码时,在Management Studio中选择“安全性”->“登录名”,通过右键快捷菜单可建立新的登录名,并设置密码。在树中双击某个登录名,例如sa,选择“状态”->“启用”,以激活(或禁用)帐户。但是要注意新建帐户必须与一个默认的数据库关联,否则登录时会提示“管道另一端无进程”。例如右击sa帐户,从快捷菜单中选择“属性”命令,在“登录属性”对话框中选择“常规”页,在该页底部为此帐户选择一个默认数据库,例如“master”。注意重启SQL Server使上述设置生效。
      

  4.   

    最简单的方法,你在页面放置一个sqlconnection,然后通。net的配置程序,配置一个,看看里面的代码,这样的一般都是能用的。你是访问本机的sql ,应该不存在网络的问题,但是如果有防火墙 应该另论
      

  5.   


    必须要在 SQL server下开启远程连接  后才能访问在sQL配置工具下面有 设置后才能
      

  6.   

    string db = "server=.;database=" + textBox1.Text.Trim() + ";uid=sa;pwd="; 这里的server=.常常会不好使,可以改成server=localhost或者server=您的计算机名
      

  7.   

    执行存储过程 sp_configure 'remote access', 1
    或者
    sp_configure 'remote admin connections', 1;
      

  8.   

    garfield的点子一点都不错。你在VS2005/2008中随便插入一个测试页面,拉进一个GridView控件,为其“新建一个数据源”datsource,选择“数据库”,SQL 配置,然后测试,这不是很好玩吗?
    最后到Web.config文件中找到你的良好的连接字符串。
    如果可视化都不灵,那才关注SQL Server 2005本身的设置。
      

  9.   

    访问我的博客 程序员日记 http://www.ideaext.com
      

  10.   

    问题很明显了,远程连接问题,你似乎是装了两个sql服务器吧,一个vs自带的一个是自己又装的?如果是这样的话看:
    http://blog.csdn.net/itneste/archive/2009/04/27/4128647.aspx
      

  11.   

    嗯,学会了一招,是winform开发的,可视化链接数据库没有问题,sqlserver设置看来是没有问题了,app.config里面的代码是<?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <configSections>
        </configSections>
        <connectionStrings>
            <add name="数据库连接.Properties.Settings.db_lvshuangConnectionString1"
                connectionString="Data Source=JOE-XP\SQLEXPRESS;Initial Catalog=db_lvshuang;User ID=joe;Password=Joe1982"
                providerName="System.Data.SqlClient" />
        </connectionStrings>
    </configuration>
    不过把这段中的connectionstring复制到最初代码中的db那一段的话依然出现40连接错误,不晓得是怎么回事了汗!
      

  12.   

    终于搞定!感谢各位!还是连接字符串出的问题,激动激动!!!最终采用的字符串是:connectionString="Data Source=JOE-XP\\SQLEXPRESS;Initial Catalog=db_lvshuang;User ID=joe;Password=Joe1982"感谢感谢感谢感谢!!!!!!