109 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System.Collections.Generic;
 | |
| using System.Data;
 | |
| using System.Data.SQLite;
 | |
| using System.Configuration;
 | |
| using System.Data.SqlClient;
 | |
| //using MySql.Data.MySqlClient;
 | |
| 
 | |
| namespace ConsoleApp5
 | |
| {
 | |
|     public class DBHelper
 | |
|     {
 | |
|         private readonly static string connStr = ConfigurationManager.ConnectionStrings["Data Source=mesclient.sqlite;Version=3"].ConnectionString;
 | |
| 
 | |
|         //获取 appsetting 设置的值
 | |
|         //private readonly static string appStr = ConfigurationManager.AppSettings["TestKey"];
 | |
| 
 | |
|         //获取 connection 对象
 | |
|         public static IDbConnection CreateConnection()
 | |
|         {
 | |
|             IDbConnection conn = new SQLiteConnection(connStr);//MySqlConnection //SqlConnection
 | |
|             conn.Open();
 | |
|             return conn;
 | |
|         }
 | |
| 
 | |
|         //执行非查询语句
 | |
|         public static int ExecuteNonQuery(IDbConnection conn, string sql, Dictionary<string, object> parameters)
 | |
|         {
 | |
|             using (IDbCommand cmd = conn.CreateCommand())
 | |
|             {
 | |
|                 cmd.CommandText = sql;
 | |
|                 foreach (KeyValuePair<string, object> keyValuePair in parameters)
 | |
|                 {
 | |
|                     IDbDataParameter parameter = cmd.CreateParameter();
 | |
|                     parameter.ParameterName = keyValuePair.Key;
 | |
|                     parameter.Value = keyValuePair.Value;
 | |
|                     cmd.Parameters.Add(parameter);
 | |
|                 }
 | |
|                 return cmd.ExecuteNonQuery();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         //执行非查询语句-独立连接
 | |
|         public static int ExecuteNonQuery(string sql, Dictionary<string, object> parameters)
 | |
|         {
 | |
|             using (IDbConnection conn = CreateConnection())
 | |
|             {
 | |
|                 return ExecuteNonQuery(conn, sql, parameters);
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         //查询首行首列
 | |
|         public static object ExecuteScalar(IDbConnection conn, string sql, Dictionary<string, object> parameters)
 | |
|         {
 | |
|             using (IDbCommand cmd = conn.CreateCommand())
 | |
|             {
 | |
|                 cmd.CommandText = sql;
 | |
|                 foreach (KeyValuePair<string, object> keyValuePair in parameters)
 | |
|                 {
 | |
|                     IDbDataParameter parameter = cmd.CreateParameter();
 | |
|                     parameter.ParameterName = keyValuePair.Key;
 | |
|                     parameter.Value = keyValuePair.Value;
 | |
|                     cmd.Parameters.Add(parameter);
 | |
|                 }
 | |
|                 return cmd.ExecuteScalar();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         //查询首行首列-独立连接
 | |
|         public static object ExecuteScalar(string sql, Dictionary<string, object> parameters)
 | |
|         {
 | |
|             using (IDbConnection conn = CreateConnection())
 | |
|             {
 | |
|                 return ExecuteScalar(conn, sql, parameters);
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         //查询表
 | |
|         public static DataTable ExecuteQuery(IDbConnection conn, string sql, Dictionary<string, object> parameters)
 | |
|         {
 | |
|             DataTable dt = new DataTable();
 | |
|             using (IDbCommand cmd = conn.CreateCommand())
 | |
|             {
 | |
|                 cmd.CommandText = sql;
 | |
|                 foreach (KeyValuePair<string, object> keyValuePair in parameters)
 | |
|                 {
 | |
|                     IDbDataParameter parameter = cmd.CreateParameter();
 | |
|                     parameter.ParameterName = keyValuePair.Key;
 | |
|                     parameter.Value = keyValuePair.Value;
 | |
|                     cmd.Parameters.Add(parameter);
 | |
|                 }
 | |
|                 using (IDataReader reader = cmd.ExecuteReader())
 | |
|                 {
 | |
|                     dt.Load(reader);
 | |
|                 }
 | |
|             }
 | |
| 
 | |
|             return dt;
 | |
|         }
 | |
| 
 | |
|         //查询表--独立连接
 | |
|         public static DataTable ExecuteQuery(string sql, Dictionary<string, object> parameters)
 | |
|         {
 | |
|             using (IDbConnection conn = CreateConnection())
 | |
|             {
 | |
|                 return ExecuteQuery(conn, sql, parameters);
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| } |