简单的数据库连接操作,用传参方法实现.
不过,在编译过程中出现很多问题.
请兄弟们看看!!
实现原理:
      用户直接调用SqlConnection方法,填写相应的参数.实现连接数据库的功能.出现问题:
       1,System.Data.Sqlclient.SqlException:在建立与胫务器的连接时出错.在连接到SQL       Server2005时,在默认的设置下SQL Server不允许进行远程连接可能会导致此失败.(provider:命名管道提供程序,err:40-)(本机装有VS.NET2005自Dai的SQL Server),可我连接的是(local)???跟它有什么关系??????
        2,System.NullReferenceException:没有将对象引用设置到对象的实例@!!!!是ds.Table["Zd_Xz"]中没有表Zd_Xz吗????
        3,在dataGridView.DataSource=ds.Table["Zd_Xz"].DefaultView;中,发现静态成员:_objectTypeCount的值是:2:去掉参数,正常运行是:1;不知何故??????又如何 解决???具体代码如下:       DataSet ds = new DataSet();
        SqlDataAdapter sda = new SqlDataAdapter();
        #region 连接数据库
        public static DataSet SqlConnection(string ser, string UID, string PWD, string DataBase,string myTableName)
        {
            DataSet ds = new DataSet();
            SqlDataAdapter sda = new SqlDataAdapter();
            try
            {
                string serv = "server=" + ser;
                string ud = "uid=" + UID + ";";
                string pd = "pwd=" + PWD + ":";
                string database = "database=" + DataBase;
                string source = serv + ud + pd + database;
                //string source = "server=(local);" + "uid=sa;pwd=0703;" + "database=Fr_Hospital";(去掉参数时的Conn,成功连接)                SqlConnection Conn = new SqlConnection(source);
                Conn.Open();                sda.SelectCommand = GenerateSelectCommand(Conn);
                sda.Fill(ds, "myTableName");            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.ToString());
            }
            return null;
        }
        #endregion

解决方案 »

  1.   

    VS.NET2005自Dai的SQL Server默认实例名是(local)\SqlExpress
      

  2.   

    ds.Table["Zd_Xz"]
    ====
    笔误么?
    ds.Tables["Zd_Xz"]
      

  3.   

    那么,解决方案是什么?
    在我机子上,(local)\SqlExpress没有建立连接!
      

  4.   

    to 2,System.NullReferenceException:没有将对象引用设置到对象的实例@!!!!是ds.Table["Zd_Xz"]中没有表Zd_Xz吗????
    3,在dataGridView.DataSource=ds.Table["Zd_Xz"].DefaultView;中,发现静态成员:_objectTypeCount的值是:2:去掉参数,正常运行是:1;不知何故??????又如何 解决???
    以上当然不对了,你用如下
    sda.Fill(ds, "myTableName");
    名字是“myTableName”,所以你要通过ds.Table["myTableName"]来进行访问。
      

  5.   

    DataSet ds = new DataSet();——>DataSet ds = new DataSet("myTableName");
    或者:sda.Fill(ds, "myTableName");----->sda.Fill(ds);
      

  6.   

    .\sqlexpress,用这个
    同时这个VS2005自带的SQL Server默认不支持使用用户名和密码进行登录,只能使用Windows验证
      

  7.   

    用惯了MS的高级IDE,用EXPRESS肯定有些不习惯:)但如果一直用JAVA IDE,换用.NET IDE,会觉得进了天堂