C# 连接SQL数据库类

来源:互联网 发布:大庆石化公司网络培训 编辑:程序博客网 时间:2024/05/02 05:57

前言

数据库课程设计中,对于数据库的操作有点糙。怎么说呢,就是每次实现对于数据库的连接以及增删查该都是独立的,条理看上去比较清晰的,但是代码就有点冗杂,一点不简洁,一看就是新手。之后请教了其他同学,有个同学运用到了封装。详细的地方并没有问,感觉自己摸索会更加印象深刻吧。还是一样,这篇博文的代码部分转载于网上的代码,自己实际测试的时候发现还是有些错误,自己修改使之能够成功运行而已。我只是在搬运正确的东西。

正文

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Data.SqlClient;using System.Data;namespace 图片存储数据库测试{    class ClassDB    { /// <summary>        /// 创建数据库连接        /// </summary>       static  private SqlConnection getConnection()        {            try            {                SqlConnection con = new SqlConnection();                ///使用是将以下代码中的内容替换:NAME是服务器名称,DATABASE是使用的数据库的名称,USERNAME和PASSWORD分别为登陆数据库时所用的用户名和密码                con.ConnectionString = "server= .;database=hotel;uid=sa;pwd=123456;";                con.Open();                return con;            }            catch (Exception ex)            {                throw ex;            }        }        /// <summary>        /// 执行登录验证操作        /// </summary>       static  public int load(string sql)        {            try            {                SqlConnection con = getConnection();                SqlCommand com = new SqlCommand();                com.CommandType = CommandType.Text;                com.Connection = con;                com.CommandText = sql;                return (int)com.ExecuteScalar();            }            catch (Exception ex)            {                throw ex;            }        }        /// <summary>        /// 执行增删改的操作 返回受影响的行数        /// </summary>      static  public int execADU(string sql)        {            try            {                SqlConnection con = getConnection();                SqlCommand com = new SqlCommand();                com.CommandType = CommandType.Text;                com.Connection = con;                com.CommandText = sql;                return com.ExecuteNonQuery();            }            catch (Exception ex)            {                throw ex;            }        }        /// <summary>        /// 执行查询操作        /// </summary>       static public DataTable select(string sql)        {            try            {                SqlConnection con = getConnection();                SqlCommand cmd = new SqlCommand();                cmd.Connection = con;                cmd.CommandType = CommandType.Text;                cmd.CommandText = sql;                SqlDataAdapter dap = new SqlDataAdapter();                dap.SelectCommand = cmd;                DataTable dt = new DataTable();                dap.Fill(dt);                return dt;            }            catch (Exception ex)            {                throw ex;            }        }        /// <summary>        /// 执行select语句,以dataReader的形式返回        /// </summary>      static  public SqlDataReader selectPer(string sql)        {            try            {                SqlConnection con = getConnection();                SqlCommand cmd = new SqlCommand();                cmd.Connection = con;                cmd.CommandType = CommandType.Text;                cmd.CommandText = sql;                SqlDataReader reader = cmd.ExecuteReader();                return reader;            }            catch (Exception ex)            {                throw ex;            }        }    }}

至于该类的运用比较简单的,这里不提示了。还有一点,就是对于这个类的验证只是登录。个人亲身测试成功,其他部分需要大家在实际运用的时候测试。

0 0
原创粉丝点击