【C#】 执行Sql Server数据库操作的通用方法

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DbConnect
{
    /// <summary>
    /// 连接数据库的基本方法
    /// </summary>
    public class ConnectSql
    {
        public string connStr = "Data source=.;Initial Catalog=myWork;User ID=sa;Password=123456";      // 数据库连接字符串
        public SqlConnection conn;         // SqlConnection实例

        /// <summary>
        /// 连接数据库
        /// </summary>
        public  Boolean  connectSql()
        {
            // 创建SqlConnection实例
            try
            {
                conn = new SqlConnection(connStr);
                // 打开数据库连接
                conn.Open();
                //Console.WriteLine("数据库连接成功!");
                return true;
            }
            catch (Exception ex)
            {
                Console.WriteLine("数据库连接失败!" + ex.Message);
                return false;
            }
        }

        /// <summary>
        /// 关闭数据库连接
        /// </summary>
        public void close()
        {
            if (conn != null)
            {
                conn.Close();
            }
        }

        /// <summary>
        /// 通用查询方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public DataTable select(string sql)
        {
            if (!connectSql())
            {
                return null;
            }
            try
            {
                // 获取命令对象
                SqlCommand command = new SqlCommand(sql, conn);
                // 执行语句
                SqlDataAdapter adapter = new SqlDataAdapter();
                adapter.SelectCommand = command;
                // 将结果以DataTable的形式显示
                DataSet ds = new DataSet();
                adapter.Fill(ds);
                close();    // 关闭对象
                if (ds.Tables.Count > 0)
                {
                    return ds.Tables[0];

                }
            }catch(Exception ex)
            {
                Console.WriteLine("连接错误 :" + ex.Message);
            }
            return null;
        }

        /// <summary>
        /// 新增sql方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public int insert(string sql)
        {
            if (!connectSql())
            {
                return 0;
            }
            // 获取命令对象
            SqlCommand command = new SqlCommand(sql, conn);
            // 执行语句
            int result = command.ExecuteNonQuery();
            // 将结果以DataTable的形式显示
            conn.Close();
            return result;
        }

        /// <summary>
        /// 删除sql方法
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public int delete (string sql)
        {
            if (!connectSql())
            {
                return 0;
            }
            // 获取命令对象
            SqlCommand command = new SqlCommand(sql, conn);
            // 执行语句
            int result = command.ExecuteNonQuery();
            // 将结果以DataTable的形式显示
            conn.Close();
            return result;
        }

        /// <summary>
        /// 更新sql语句
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public int update(string sql)
        {
            if (!connectSql())
            {
                return 0;
            }
            // 获取命令对象
            SqlCommand command = new SqlCommand(sql, conn);
            // 执行语句
            int result = command.ExecuteNonQuery();
            // 将结果以DataTable的形式显示
            conn.Close();
            return result;
        }

    }
}

 

posted @ 2022-10-22 15:11  陆陆无为而治者  阅读(226)  评论(0编辑  收藏  举报