c dbhelper类下载mysql_C# MySQL DBHelper帮助类

下载:Download Connector/Net

DBHelper类

using System;

using System.Configuration;

using System.Data;

using MySql.Data.MySqlClient;

using RecordingSystem.Common;

namespace MySQLDemo

{

public class DBHelper : IDisposable

{

private static string dbConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;

private MySqlConnection connection;

public DBHelper()

{

try

{

connection = CreateConnection(dbConnectionString);

}

catch (Exception ex)

{

EventsLog.WriteLog("ErrorInfo" + ex.Message);

}

}

public DBHelper(string connectionString)

{

this.connection = CreateConnection(connectionString);

}

public static MySqlConnection CreateConnection()

{

MySqlConnection dbconn = new MySqlConnection();

dbconn.ConnectionString = DBHelper.dbConnectionString;

return dbconn;

}

public static MySqlConnection CreateConnection(string connectionString)

{

MySqlConnection dbconn = new MySqlConnection();

dbconn.ConnectionString = connectionString;

return dbconn;

}

public MySqlCommand GetStoredProcCommond(string storedProcedure)

{

MySqlCommand MySqlCommand = connection.CreateCommand();

MySqlCommand.CommandText = storedProcedure;

MySqlCommand.CommandType = CommandType.StoredProcedure;

return MySqlCommand;

}

public MySqlCommand GetSqlStringCommond(string sqlQuery)

{

MySqlCommand MySqlCommand = connection.CreateCommand();

MySqlCommand.CommandText = sqlQuery;

MySqlCommand.CommandType = CommandType.Text;

return MySqlCommand;

}

//增加参数#region 增加参数

#region

public void AddParameterCollection(MySqlCommand cmd, MySqlParameterCollection SqlParameterCollection)

{

foreach (MySqlParameter para in SqlParameterCollection)

{

cmd.Parameters.Add(para);

}

}

public void AddOutParameter(MySqlCommand cmd, string parameterName, DbType dbType, int size)

{

MySqlParameter MySqlParameter = cmd.CreateParameter();

MySqlParameter.DbType = dbType;

MySqlParameter.ParameterName = parameterName;

MySqlParameter.Size = size;

MySqlParameter.Direction = ParameterDirection.Output;

cmd.Parameters.Add(MySqlParameter);

}

public void AddInParameter(MySqlCommand cmd, string parameterName, DbType dbType, object value)

{

MySqlParameter MySqlParameter = cmd.CreateParameter();

MySqlParameter.DbType = dbType;

MySqlParameter.ParameterName = parameterName;

MySqlParameter.Value = value;

MySqlParameter.Direction = ParameterDirection.Input;

cmd.Parameters.Add(MySqlParameter);

}

public void AddInParameter(MySqlCommand cmd, string parameterName, T value)

{

var dbParameter = cmd.CreateParameter();

dbParameter.DbType = DbTypeConvert.TypeToDbType(typeof(T));

dbParameter.ParameterName = parameterName;

dbParameter.Value = value;

dbParameter.Direction = ParameterDirection.Input;

cmd.Parameters.Add(dbParameter);

}

public void AddInParameter(MySqlCommand cmd, string parameterName, DbType dbType)

{

MySqlParameter MySqlParameter = cmd.CreateParameter();

MySqlParameter.DbType = dbType;

MySqlParameter.ParameterName = parameterName;

MySqlParameter.Direction = ParameterDirection.Input;

cmd.Parameters.Add(MySqlParameter);

}

public void AddReturnParameter(MySqlCommand cmd, string parameterName, DbType dbType)

{

MySqlParameter MySqlParameter = cmd.CreateParameter();

MySqlParameter.DbType = dbType;

MySqlParameter.ParameterName = parameterName;

MySqlParameter.Direction = ParameterDirection.ReturnValue;

cmd.Parameters.Add(MySqlParameter);

}

public MySqlParameter GetParameter(MySqlCommand cmd, string parameterName)

{

return cmd.Parameters[parameterName];

}

#endregion

//执行#region 执行

#region

public DataSet ExecuteDataSet(MySqlCommand cmd)

{

//DbProviderFactory dbfactory = DbProviderFactories.GetFactory(DBHelper.dbProviderName);

MySqlDataAdapter MySqlDataAdapter = new MySqlDataAdapter();

MySqlDataAdapter.SelectCommand = cmd;

DataSet ds = new DataSet();

MySqlDataAdapter.Fill(ds);

return ds;

}

public DataTable ExecuteDataTable(MySqlCommand cmd)

{

//DbProviderFactory dbfactory = DbProviderFactories.GetFactory(DBHelper.dbProviderName);

MySqlDataAdapter MySqlDataAdapter = new MySqlDataAdapter();

MySqlDataAdapter.SelectCommand = cmd;

DataTable dataTable = new DataTable();

MySqlDataAdapter.Fill(dataTable);

return dataTable;

}

public MySqlDataReader ExecuteReader(MySqlCommand cmd)

{

try

{

cmd.Connection.Open();

MySqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

return reader;

}

catch

{

cmd.Connection.Close();

throw;

}

}

public int ExecuteNonQuery(MySqlCommand cmd)

{

try

{

cmd.Connection.Open();

int ret = cmd.ExecuteNonQuery();

return ret;

}

catch

{

throw;

}

finally

{

cmd.Connection.Close();

}

}

public object ExecuteScalar(MySqlCommand cmd)

{

cmd.Connection.Open();

object ret = cmd.ExecuteScalar();

cmd.Connection.Close();

return ret;

}

#endregion

//执行事务#region 执行事务

#region

public DataSet ExecuteDataSet(MySqlCommand cmd, Trans t)

{

cmd.Connection = t.DbConnection;

cmd.Transaction = t.DbTrans;

//DbProviderFactory dbfactory = DbProviderFactories.GetFactory(DBHelper.dbProviderName);

MySqlDataAdapter MySqlDataAdapter = new MySqlDataAdapter();

MySqlDataAdapter.SelectCommand = cmd;

DataSet ds = new DataSet();

MySqlDataAdapter.Fill(ds);

return ds;

}

public DataTable ExecuteDataTable(MySqlCommand cmd, Trans t)

{

cmd.Connection = t.DbConnection;

cmd.Transaction = t.DbTrans;

//DbProviderFactory dbfactory = DbProviderFactories.GetFactory(DBHelper.dbProviderName);

MySqlDataAdapter MySqlDataAdapter = new MySqlDataAdapter();

MySqlDataAdapter.SelectCommand = cmd;

DataTable dataTable = new DataTable();

MySqlDataAdapter.Fill(dataTable);

return dataTable;

}

public MySqlDataReader ExecuteReader(MySqlCommand cmd, Trans t)

{

cmd.Connection.Close();

cmd.Connection = t.DbConnection;

cmd.Transaction = t.DbTrans;

MySqlDataReader reader = cmd.ExecuteReader();

DataTable dt = new DataTable();

return reader;

}

public int ExecuteNonQuery(MySqlCommand cmd, Trans t)

{

cmd.Connection.Close();

cmd.Connection = t.DbConnection;

cmd.Transaction = t.DbTrans;

int ret = cmd.ExecuteNonQuery();

return ret;

}

public object ExecuteScalar(MySqlCommand cmd, Trans t)

{

cmd.Connection.Close();

cmd.Connection = t.DbConnection;

cmd.Transaction = t.DbTrans;

object ret = cmd.ExecuteScalar();

return ret;

}

#endregion

#region IDisposable Members

public void Dispose()

{

if (this.connection.State != ConnectionState.Closed)

{

this.connection.Close();

}

this.connection.Dispose();

}

#endregion

}

public class Trans : IDisposable

{

private MySqlConnection conn;

private MySqlTransaction dbTrans;

public MySqlConnection DbConnection

{

get { return this.conn; }

}

public MySqlTransaction DbTrans

{

get { return this.dbTrans; }

}

public Trans()

{

conn = DBHelper.CreateConnection();

conn.Open();

dbTrans = conn.BeginTransaction();

}

public Trans(string connectionString)

{

conn = DBHelper.CreateConnection(connectionString);

conn.Open();

dbTrans = conn.BeginTransaction();

}

public void Commit()

{

dbTrans.Commit();

this.Colse();

}

public void RollBack()

{

dbTrans.Rollback();

this.Colse();

}

public void Dispose()

{

this.Colse();

}

public void Colse()

{

if (conn.State == System.Data.ConnectionState.Open)

{

conn.Close();

}

}

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
using System; using System.Collections; using System.Collections.Generic; using System.Text; using System.Data; using System.Data.SqlClient; using System.Configuration; namespace MyOfficeDAL { public static class DBHelper { private static SqlConnection connection; public static SqlConnection Connection { get { string connectionString = ConfigurationManager.ConnectionStrings["MyOfficeConnectionString"].ConnectionString; connection = new SqlConnection(connectionString); if (connection == null) { connection.Open(); } else if (connection.State == System.Data.ConnectionState.Closed) { connection.Open(); } else if (connection.State == System.Data.ConnectionState.Broken) { connection.Close(); connection.Open(); } return connection; } } public static int ExecuteCommand(string safeSql) { SqlCommand cmd = new SqlCommand(safeSql, Connection); int result = cmd.ExecuteNonQuery(); return result; } public static int ExecuteCommand(string sql, params SqlParameter[] values) { SqlCommand cmd = new SqlCommand(sql, Connection); cmd.Parameters.AddRange(values); return cmd.ExecuteNonQuery(); } public static string ReturnStringScalar(string safeSql) { SqlCommand cmd = new SqlCommand(safeSql, Connection); try { string result = cmd.ExecuteScalar().ToString(); return result; } catch (Exception ex) { return "0"; } connection.Close(); } public static int GetScalar(string safeSql) { SqlCommand cmd = new SqlCommand(safeSql, Connection); try { int result = Convert.ToInt32(cmd.ExecuteScalar()); return result; } catch (Exception e) { return 0; } connection.Close(); } public static int GetScalar(string sql, params SqlParameter[] values) { SqlCommand cmd = new SqlCommand(sql, Connection); cmd.Parameters.AddRange(values); int result = Convert.ToInt32(cmd.ExecuteScalar()); return result; connection.Close(); } public static SqlDataReader GetReader(string safeSql) { SqlCommand cmd = new SqlCommand(safeSql, Connection); SqlDataReader reader = cmd.ExecuteReader(); return reader; reader.Close(); reader.Dispose(); } public static SqlDataReader GetReader(string sql, params SqlParameter[] values) { SqlCommand cmd = new SqlCommand(sql, Connection); cmd.Parameters.AddRange(values); SqlDataReader reader = cmd.ExecuteReader(); return reader; reader.Close(); reader.Dispose(); } public static DataTable GetDataSet(string safeSql) { DataSet ds = new DataSet(); SqlCommand cmd = new SqlCommand(safeSql, Connection); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(ds); connection.Close(); connection.Dispose(); return ds.Tables[0]; } public static DataTable GetDataSet(string sql, params SqlParameter[] values) { DataSet ds = new DataSet(); SqlCommand cmd = new SqlCommand(sql, Connection); cmd.Parameters.AddRange(values); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(ds); connection.Close(); connection.Dispose(); return ds.Tables[0]; } } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值