SqlServer数据库操作的基本函数(用以备忘)

SqlServer数据库操作的基本函数(用以备忘)

项目中难免遇到数据库相关操作,对于数据库操作地方我们可以写一个数据操作类进行处理,避免每次都需要手动创建连接,打开连接等等。下面给出数据库操作类的基本服务函数。

        /// <summary>
        /// 初始化连接,打开连接
        /// </summary>
        /// <returns></returns>
        private bool InitConnection()
        {
            if (sqlConn == null)
            {
                sqlConn = new SqlConnection(this.strConn);
            }
            if (sqlConn.State == ConnectionState.Closed)
            {
                sqlConn.Open();
            }
            return true;
        }

该部分主要检查数据库连接状态,没有则创建,没打开则打开。

        /// <summary>
        /// 返回执行的记录数
        /// </summary>
        /// <param name="strSQL"></param>
        /// <returns></returns>
        public int GetSQLExecuteLineCount(string strSQL)
        {
            try
            {
                InitConnection();
                if (sqlConn == null) return 0;
                using (SqlCommand command = sqlConn.CreateCommand())
                {
                    command.CommandText = strSQL;
                    return command.ExecuteNonQuery();
                }
            }
            catch (System.Exception)
            {
            }
            return 0;
        }

        /// <summary>
        /// 返回查询的表
        /// </summary>
        /// <param name="strSql"></param>
        /// <returns></returns>
        public DataTable GetQueryTable(string strSql)
        {
            try
            {
                InitConnection();
                if (sqlConn == null) return null;
                DataTable dt = new DataTable();
                SqlDataAdapter da = new SqlDataAdapter(strSql, sqlConn);
                da.Fill(dt);
                return dt;
            }
            catch (System.Exception)
            {
            }
            return null;
        }

        /// <summary>
        /// 返回第一行第一列
        /// </summary>
        /// <param name="strSql"></param>
        /// <returns></returns>
        public Object GetQueryFirstObject(string strSql)
        {
            try
            {
                InitConnection();
                if (sqlConn == null) return null;
                using (SqlCommand command = sqlConn.CreateCommand())
                {
                    command.CommandText = strSql;
                    return command.ExecuteScalar();
                }
            }
            catch (System.Exception)
            {
            }
            return null;
        }

上面三个基本函数实现查询基本功能,传入查询的语句返回三种结果。

有了上面这三个基本函数,我们自己写的查询函数就可以写成这样:

        public DataTable GetSjmOrFsjm(string nameCode)
        {
            string name = string.Empty;
            string sql = string.Format("select sjm03 from sjm where sjm02 = '{0}'", nameCode);
            DataTable table = GetQueryTable(sql);
            return table;
        }

这样书写明显就简化了很多。顺便提一下,我们这里的连接字符串从配置文件中读出,最好设计成单例模型,然后设置到我们数据库操作类的字符创静态变量中

public static string connectionString = "Data Source=192.168.168.2;Initial Catalog=databaseName;Persist Security Info=True;User ID=userID;Password=psd";

这样操作数据就相对方便了,如果你有更好的办法也可以相互交流。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值