永发信息网

关于C#中连接数据库的问题,这些每一行都是什么意思。看不懂……

答案:1  悬赏:0  手机版
解决时间 2021-02-07 07:35
  • 提问者网友:不爱我么
  • 2021-02-06 07:48
public SqlConnection con;
public SqlDataAdapter ada;
/// <summary>
/// 减少服务器的连接次数,提高性能
/// </summary>
private void Open()
{
string constring = @"Server=.;DataBase=Student_学号_DB;Integrated Security=true";
if (this.con==null)
{
con = new SqlConnection(constring);
}
else if(this.con.State==ConnectionState.Open)
{
return;
}
con.Open();
}
private void Close()
{
con.Dispose();//释放资源
con.Close();//关闭连接
con = null;
}
// 获得数据集(本地数据库)
public DataSet GetDataSet(string sqlstring)
{
Open();
SqlCommand com = new SqlCommand(sqlstring, con);
ada = new SqlDataAdapter(com);
DataSet ds = new DataSet();
ada.Fill(ds);
Close();
return ds;
}

public SqlDataAdapter GetDataAdapter(string sqlstring)
{
Open();
SqlCommand com = new SqlCommand(sqlstring, con);
ada = new SqlDataAdapter(com);
SqlCommandBuilder comb = new SqlCommandBuilder(ada);
return ada;
}
新人求告诉每一行的含义。谢谢
最佳答案
  • 五星知识达人网友:白昼之月
  • 2021-02-06 08:40
public SqlConnection con;             //定义一个数据库连接的实例,用于与数据库建立连接
        public SqlDataAdapter ada;    //定义一个数据通道,用于数据的传输,差不多这个意思
        /// <summary>
        /// 减少服务器的连接次数,提高性能
        /// </summary>
        private void Open()  //这个是开启数据库连接的接口
        {
            string constring = @"Server=.;DataBase=Student_学号_DB;Integrated Security=true";  //定义数据库的连接字符串,这里指定了本地数据库(Server=.),数据库名称(DataBase=Student_学号_DB),连接模式(Integrated Security=true),这里用了信任模式,使用这种模式就不用输入用户名和密码了。
            if (this.con==null)   //判断这个连接实例是否为空
            {
                con = new SqlConnection(constring);  //如果为空的话就进行定义
            }
            else if(this.con.State==ConnectionState.Open)  //如果已经定义过了话就将此连接开启
            {
                return;
            }
            con.Open();  //将刚定义的连接开启
        }
        private void Close()   //这个是关闭数据库连接的接口
        {
            con.Dispose();//释放资源
            con.Close();//关闭连接
            con = null;
        }
         // 获得数据集(本地数据库)
          public DataSet GetDataSet(string sqlstring)   //这个接口将获取到一个数据集,字符串参数是sql语句
        {
            Open();   //调用上面定义的接口,开启数据库连接
            SqlCommand com = new SqlCommand(sqlstring, con);  //这里定义了一个sqlcommand对象,用于执行sql语句,它有好几个重载方法,这里是两个参数的构造方法。
            ada = new SqlDataAdapter(com);   //这里定义了dataadpter对象,是重点,它相当于一个管道,用来获取sql语句的结果集。
            DataSet ds = new DataSet();    //定义了一个数据容器dataset,用来存放上面的结果集
            ada.Fill(ds);  //利用管道将结果集插入到dataset容器中
            Close();   //操作完成后就关闭数据库连接
            return ds;  //返回数据集
        }

          public SqlDataAdapter GetDataAdapter(string sqlstring)  //这个接口的语句和上面差不多相似,就不说了
          {
              Open();
              SqlCommand com = new SqlCommand(sqlstring, con);
              ada = new SqlDataAdapter(com);
              SqlCommandBuilder comb = new SqlCommandBuilder(ada);  //这里说一下CommandBuilder类,使用它的好处是能直接使用dataadapter的update()方法来更新dataset
              return ada;
          }有问题再追问,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯