C#连接数据库问题,一直没人解决!
帮帮小妹啊.平台:
windows xp sp2
VS2005 团队版
具有高级服务的 Microsoft SQL Server 2005 Express Edition
我先说一下我的操作步骤,然后再说毛病
步骤:我在VC#2005中创建了一个winform程序,然后在解决方案里添加了一个SQL数据库BookData。
现在的毛病是无法连接数据库,在VC#2005的服务器资源管理器中看到BookData是连接着的,但是只要我一运行程序,则BookData下面就有个红叉号出来了,也就是说连接被关闭了。
BookData这个数据库我在SQL Server 2005的管理器中看不到有这个实例(我想这是正常的,因为我是在VS里创建的数据库,而不是在SQL Server 2005管理器中创建的)。请问这是什么毛病呢?如何解决呢?贴一下代码:/*
MyClass().ConnectionString的字符串是:
Data Source = .\SQLEXPRESS;
Integrated Security = SSPI;
Initial Catalog = BookData;
*/SqlConnection con = new SqlConnection(new MyClass().ConnectionString);
            con.Open();  //报错:无法打开登录所请求的数据库 "BookData"。登录失败。
            SqlCommand com = new SqlCommand("procCheckManagerID", con);
            com.CommandType = CommandType.StoredProcedure;
            com.Parameters.Add(new SqlParameter("@ID", SqlDbType.NChar, 16, ParameterDirection.Output, false, 0, 0, "ID", DataRowVersion.Default, null));            com.Parameters["@ID"].Value = txtID.Text.Trim();
            com.ExecuteNonQuery();
            string resultID = (string)com.Parameters["@ID"].Value;
            if (resultID == null)
            {
                MessageBox.Show("yes");
            }
            else
            {
                MessageBox.Show("no");
            }

解决方案 »

  1.   

    在服务器资源管理器看看ConnectionString
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070212http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
      

  2.   

    MyClass().ConnectionString的字符串是:
    Data Source = .\\SQLEXPRESS;
    Integrated Security = SSPI;
    Initial Catalog = BookData;
    (Or)
    MyClass().ConnectionString=@"Data Source = .\SQLEXPRESS;
    Integrated Security = SSPI;
    Initial Catalog = BookData;"
      

  3.   

    <connectionStrings>
            <add name="WindowsApplication1.Properties.Settings.NorthwindConnectionString"
                connectionString="Data Source=.;Initial Catalog=Northwind;User ID=sa"
                providerName="System.Data.SqlClient" />
        </connectionStrings>
    </configuration>
      

  4.   

    <connectionStrings>
            <add name="WindowsApplication1.Properties.Settings.NorthwindConnectionString"
                connectionString="Data Source=.;Initial Catalog=Northwind;User ID=sa"
                providerName="System.Data.SqlClient" />
        </connectionStrings>
    </configuration>请问这个用哪个类可以直接读取出来?
      

  5.   

    ConfigurationManager.ConnectionStrings
    ["WindowsApplication1.Properties.Settings.NorthwindConnectionString"].connectString;
    ConfigurationManager.ConnectionStrings
    ["WindowsApplication1.Properties.Settings.NorthwindConnectionString"].providerName;
      

  6.   

    在vs2005中,楼主可直接这样读取:
    WindowsApplication1.Properties.Settings.Default.NorthwindConnectionString