using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Configuration;
using MySql.Data.MySqlClient;
namespace MySqlDBHelper
{
class DBHelper
{
/// <summary>
/// 執行SQL語句,返回影響的記錄數
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <returns>影響的記錄數</returns>
public static int ExecuteSql(string SQLString)
{
string connectionString = ConfigurationManager.AppSettings["ConnectionString"]; // 讀取 key
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlCommand cmd = new MySqlCommand(SQLString, connection);
try
{
connection.Open();
int rows = cmd.ExecuteNonQuery();
return rows;
}
catch (MySql.Data.MySqlClient.MySqlException e)
{
connection.Close();
throw e;
}
}
/// <summary>
/// 執行SQL語句,返回首條記錄首字段值
/// </summary>
/// <param name="SQLString">SQL語句</param>
/// <returns>第一條記錄第一個字段的值</returns>
public static string ExecuteScalar(string SQLString)
{
// 數據庫連接字符串
string connectionString = ConfigurationManager.AppSettings["COnnectionString"];
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlCommand cmd = new MySqlCommand(SQLString, connection);
try
{
connection.Open();
string rlt = cmd.ExecuteScalar().ToString();
return rlt;
}
catch (MySql.Data.MySqlClient.MySqlException e)
{
connection.Close();
throw e;
}
}
/// <summary>
/// 執行查詢語句,返回DataSet
/// </summary>
/// <param name="SQLString">查詢語句</param>
/// <returns>DataSet</returns>
public static DataSet OpenQuey(string SQLString)
{
string connectionString = ConfigurationManager.AppSettings["COnnectionString"];
MySqlConnection connection = new MySqlConnection(connectionString);
DataSet dst = new DataSet();
try
{
connection.Open();
MySqlDataAdapter da = new MySqlDataAdapter(SQLString, connection);
da.Fill(dst, "ds");
}
catch (MySql.Data.MySqlClient.MySqlException e)
{
throw new Exception(e.Message);
}
return dst;
}
/// <summary>
/// 執行查詢語句,返回MySqlDataReader
/// </summary>
/// <param name="SQLString">查詢語句</param>
/// <returns>MySqlDataReader</returns>
public static MySqlDataReader OpenDataReader(string SQLString)
{
string connectionString = ConfigurationManager.AppSettings["COnnectionString"];
MySqlConnection connection = new MySqlConnection(connectionString);
MySqlDataReader dr;
MySqlCommand cmd = connection.CreateCommand();
try
{
connection.Open();
cmd.CommandText = SQLString;
dr = cmd.ExecuteReader();
}
catch (MySql.Data.MySqlClient.MySqlException e)
{
throw new Exception(e.Message);
}
return dr;
}
/// 執行非查詢存儲過程和SQL語句
/// 增、刪、改
/// </summary>
/// <param name="strSQL">要執行的SQL語句</param>
/// <param name="parm">參數列表,沒有參數填入null</param>
/// <param name="cmdType">Command類型</param>
/// <returns>返回影響行數</returns>
public static int ExcuteSQL(string strSQL, MySqlParameter[] parm, CommandType cmdType)
{
int rowCount = 0;
string connectionString = ConfigurationManager.AppSettings["COnnectionString"];
using (MySqlConnection conn = new MySqlConnection(connectionString))
{
MySqlCommand cmd = new MySqlCommand(strSQL, conn);
cmd.CommandType = cmdType;
if (parm != null)
{
cmd.Parameters.AddRange(parm);
}
conn.Open();
rowCount = cmd.ExecuteNonQuery();
conn.Close();
}
return rowCount;
}
}
}
App.config 文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="ConnectionString" value="Server=127.0.0.1;DataBase=txl;UID=wjs;PWD=1234567" />
</appSettings>
</configuration>