数据连接类 这里采用mysql
数据库通用操作类,自己参照几个通用类改写的,用起来还是蛮不错。。。。 这里用的mysql 要是其他数据库自行更改下就好
public class MySqlHelper
{
public static string ConnectionString = ConfigurationManager.ConnectionStrings["SqlConn"].ToString(); #region 通用方法 /// <summary>
/// 创建一个连接对象
/// </summary>
/// <param name="connectionString">数据库连接字符串</param>
/// <returns></returns>
public static MySqlConnection CreateConnection(string connectionString)
{
return new MySqlConnection(connectionString);
} /// <summary>
/// 关闭一个数据库对象
/// </summary>
/// <param name="connection">数据库对象</param>
public static void CloseConnection(MySqlConnection connection)
{
if (connection != null)
{
connection.Close();
}
} /// <summary>
/// 打开一个数据库对象
/// </summary>
/// <param name="connection">数据库对象</param>
public static void OpenConnection(MySqlConnection connection)
{
if (connection != null)
{
connection.Open();
}
}
#endregion #region 执行数据库命令,返回最大自增列id /// <summary>
/// 执行数据库命令,返回受影响的行数
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回受影响的行数</returns>
public static object ExecuteScalar(MySqlTransaction transaction, string commandText)
{
return ExecuteScalar(transaction, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回受影响的行数
/// </summary>
/// <param name="connection">数据库连接对象</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回受影响的行数</returns>
public static object ExecuteScalar(MySqlConnection connection, string commandText)
{
return ExecuteScalar(connection, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回首行首列 最后插入的自增列id
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回受影响的行数</returns>
private static object ExecuteScalar(MySqlTransaction transaction, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
try
{
cmd.Connection = transaction.Connection;
cmd.Transaction = transaction;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
}
return cmd.ExecuteScalar();
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
} /// <summary>
/// 执行数据库命令,返回首行首列 最后插入的自增列id
/// </summary>
/// <param name="connection">数据库连接对象</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回受影响的行数</returns>
private static object ExecuteScalar(MySqlConnection connection, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
try
{
cmd.Connection = connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
}
return cmd.ExecuteScalar();
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
}
#endregion #region 执行数据库命令,返回受影响的行数 /// <summary>
/// 执行数据库命令,返回受影响的行数
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回受影响的行数</returns>
public static int ExecuteNonQuery(MySqlConnection connection, string commandText)
{
return ExecuteNonQuery(connection, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回受影响的行数
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回受影响的行数</returns>
public static int ExecuteNonQuery(MySqlTransaction transaction, string commandText)
{
return ExecuteNonQuery(transaction, commandText, CommandType.Text, null);
} /// <summary>
/// 执行存储过程数据库命令,返回受影响的行数
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回受影响的行数</returns>
public static int ExecuteProcedureNonQuery(MySqlConnection connection, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteNonQuery(connection, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行存储过程数据库命令,返回受影响的行数
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回受影响的行数</returns>
public static int ExecuteProcedureNonQuery(MySqlTransaction transaction, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteNonQuery(transaction, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行数据库命令,返回受影响的行数
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回受影响的行数</returns>
private static int ExecuteNonQuery(MySqlConnection connection, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
try
{
cmd.Connection = connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
}
return cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw new Exception(string.Format("错误描述:{0}{1}", ex.Message, Environment.NewLine));
}
}
} /// <summary>
/// 执行数据库命令,返回受影响的行数
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回受影响的行数</returns>
private static int ExecuteNonQuery(MySqlTransaction transaction, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
try
{
cmd.Connection = transaction.Connection;
cmd.Transaction = transaction;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
}
return cmd.ExecuteNonQuery();
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
} #endregion 执行数据库命令,返回受影响的行数 #region 执行数据库命令,返回一个数据表 /// <summary>
/// 执行数据库命令,返回一个数据表
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回一个数据表</returns>
public static DataTable ExecuteDataTable(MySqlConnection connection, string commandText)
{
return ExecuteDataTable(connection, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回一个数据表
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回一个数据表</returns>
public static DataTable ExecuteDataTable(MySqlTransaction transaction, string commandText)
{
return ExecuteDataTable(transaction, commandText, CommandType.Text, null);
} /// <summary>
/// 执行存储过程数据库命令,返回一个数据表
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据表</returns>
public static DataTable ExecuteProcedureDataTable(MySqlConnection connection, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteDataTable(connection, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行存储过程数据库命令,返回一个数据表
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据表</returns>
public static DataTable ExecuteProcedurDataTable(MySqlTransaction transaction, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteDataTable(transaction, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行数据库命令,返回一个数据表
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据表</returns>
private static DataTable ExecuteDataTable(MySqlConnection connection, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
cmd.Connection = connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
} using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
{
DataTable dt = new DataTable();
try
{
da.Fill(dt);
return dt;
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
}
} /// <summary>
/// 执行数据库命令,返回一个数据表
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据表</returns>
private static DataTable ExecuteDataTable(MySqlTransaction transaction, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
cmd.Connection = transaction.Connection;
cmd.Transaction = transaction;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
} using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
{
DataTable dt = new DataTable();
try
{
da.Fill(dt);
return dt;
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
}
} #endregion 执行数据库命令,返回一个数据表 #region 执行数据库命令,返回一个数据集 /// <summary>
/// 执行数据库命令,返回一个数据集
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回一个数据集</returns>
public static DataSet ExecuteDataset(MySqlConnection connection, string commandText)
{
return ExecuteDataset(connection, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回一个数据集
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回一个数据集</returns>
public static DataSet ExecuteDataset(MySqlTransaction transaction, string commandText)
{
return ExecuteDataset(transaction, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回一个数据集
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据集</returns>
public static DataSet ExecuteDataset(MySqlConnection connection, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteDataset(connection, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行数据库命令,返回一个数据集
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据集</returns>
public static DataSet ExecuteDataset(MySqlTransaction transaction, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteDataset(transaction, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行数据库命令,返回一个数据集
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据集</returns>
private static DataSet ExecuteDataset(MySqlConnection connection, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
cmd.Connection = connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
} using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
{
DataSet ds = new DataSet();
try
{
da.Fill(ds);
return ds;
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
}
} /// <summary>
/// 执行数据库命令,返回一个数据集
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据集</returns>
private static DataSet ExecuteDataset(MySqlTransaction transaction, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
cmd.Transaction = transaction;
cmd.Connection = transaction.Connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
} using (MySqlDataAdapter da = new MySqlDataAdapter(cmd))
{
DataSet ds = new DataSet();
try
{
da.Fill(ds);
return ds;
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
}
} #endregion 执行数据库命令,返回一个数据集 #region 执行数据库命令,返回一个数据读取器 /// <summary>
/// 执行数据库命令,返回一个数据读取器
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回一个数据读取器</returns>
public static MySqlDataReader ExecuteReader(MySqlConnection connection, string commandText)
{
return ExecuteReader(connection, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回一个数据读取器
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <returns>返回一个数据读取器</returns>
public static MySqlDataReader ExecuteReader(MySqlTransaction transaction, string commandText)
{
return ExecuteReader(transaction, commandText, CommandType.Text, null);
} /// <summary>
/// 执行数据库命令,返回一个数据读取器
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据读取器</returns>
public static MySqlDataReader ExecuteReader(MySqlConnection connection, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteReader(connection, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行数据库命令,返回一个数据读取器
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据读取器</returns>
public static MySqlDataReader ExecuteReader(MySqlTransaction transaction, string commandText, params MySqlParameter[] commandParameters)
{
return ExecuteReader(transaction, commandText, CommandType.StoredProcedure, commandParameters);
} /// <summary>
/// 执行数据库命令,返回一个数据读取器
/// </summary>
/// <param name="connection">数据库连接</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据读取器</returns>
private static MySqlDataReader ExecuteReader(MySqlConnection connection, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
try
{
cmd.Connection = connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
} return cmd.ExecuteReader();
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
} /// <summary>
/// 执行数据库命令,返回一个数据读取器
/// </summary>
/// <param name="transaction">数据库连接上的事务</param>
/// <param name="commandType">数据库命令的类型</param>
/// <param name="commandText">数据库命令的文本</param>
/// <param name="commandParameters">数据库命令的参数</param>
/// <returns>返回一个数据读取器</returns>
private static MySqlDataReader ExecuteReader(MySqlTransaction transaction, string commandText, CommandType commandType, params MySqlParameter[] commandParameters)
{
using (MySqlCommand cmd = new MySqlCommand())
{
try
{
cmd.Transaction = transaction;
cmd.Connection = transaction.Connection;
cmd.CommandText = commandText;
cmd.CommandType = commandType;
if (commandParameters != null)
{
cmd.Parameters.AddRange(commandParameters);
} return cmd.ExecuteReader();
}
catch (Exception e)
{
throw new Exception(string.Format("错误描述:{0}{1}", e.Message, Environment.NewLine));
}
}
} #endregion 执行数据库命令,返回一个数据读取器
}
数据连接类 这里采用mysql的更多相关文章
- 深入理解php的MySQL连接类
php的MySQL连接类. 后面几个show_databases和show_tables....等方法都用了一堆echo,好像一直不喜欢在类的方法里直接用输出语句,不过这也只是列举数据库和表名,构造 ...
- Tapdata Cloud 2.1.4 来啦:数据连接又上新,PolarDB MySQL、轻流开始接入,可自动标记不支持的字段类型
需求持续更新,优化一刻不停--Tapdata Cloud 2.1.4 来啦! 最新发布的版本中,在新增数据连接之余,默认标记不支持同步的字段类型,避免因此影响任务的正常运行. 更新速览 ① 数 ...
- mysql连接类与ORM的封装
ORM: - ORM什么是? 类名 ---> 数据库表 对象 ---> 记录 对象.属性 ---> 字段 - ORM的优缺点: 优点: 可跨平台,可以通过对象.属性取值,对象.方法, ...
- 分享一个简单的C#的通用DbHelper类(支持数据连接池)
每次新项目的时候,都要从头去找一遍数据库工具类.这里分享一个简单实用的C#的通用DbHelper工具类,支持数据连接池. 连接池配置 <connectionStrings> <add ...
- 帆软报表FineReport中数据连接的JDBC连接池属性问题
连接池原理 在帆软报表FineReport中,连接池主要由三部分组成:连接池的建立.连接池中连接使用的治理.连接池的关闭.下面就着重讨论这三部分及连接池的配置问题. 1. 连接池原理 连接池技术的核心 ...
- Ajax之数据连接信息捕获
connDB.properties: DB_CLASS_NAME=com.mysql.jdbc.Driver DB_URL=jdbc:mysql://127.0.0.1:3306/db_datab ...
- python全栈开发day113-DBUtils(pymysql数据连接池)、Request管理上下文分析
1.DBUtils(pymysql数据连接池) import pymysql from DBUtils.PooledDB import PooledDB POOL = PooledDB( creato ...
- Unity3D连接本地或局域网MySQL数据库
准备工作: 1.打开 Unity3D 安装目录,到这个路径下 Editor > Data > Mono > lib > mono > 2.0 拷贝出下图的五个动态链接库, ...
- 记录一个简单的dbcp数据连接池
这个示例用到了ThreadLocal与dbcp,我觉得有点意思,就整理了下.使用dbcp,肯定要导入commons-dbcp.jar包.下面直接贴DBUtil代码: public class DBUt ...
随机推荐
- windows 小知识---windows下生成公钥和私钥
首先Windows操作系统需要安装git. 安装完成后,再到任意的文件夹内,点击右键.选择git bash here 打开之后,输入ssh-keygen,一路按enter键. 全部结束后,再到C:\U ...
- C#当中的out关键字(借鉴于CSDN)
一丶与ref关键字一样,out关键字也是按引用来传递的.out 关键字会导致参数通过引用来传递.这与 ref 关键字类似,不同之处在于 ref 要求变量必须在传递之前进行初始化.若要使用 out 参数 ...
- 【python】详解numpy库与pandas库axis=0,axis= 1轴的用法
对数据进行操作时,经常需要在横轴方向或者数轴方向对数据进行操作,这时需要设定参数axis的值: axis = 0 代表对横轴操作,也就是第0轴: axis = 1 代表对纵轴操作,也就是第1轴: nu ...
- linux 的sed命令解释 sed ':t;N;s/\n/,/;b t' 将换行符换成逗号
linux 的sed命令解释 sed ':t;N;s/\n/,/;b t' 将换行符换成逗号 实现的功能是吧换行符换成逗号了,自己试验过. 求解释,:t N b t 都是什么意思??? :t 定义la ...
- lua_note_01_lua介绍
1. lua 1. lua 1.1. lua介绍 1.2. Lua 特性 1.3. 特点 1.4. Lua 应用场景 1.5. 环境搭建 1.6. VS lua 1.1. lua介绍 Lua 是一种轻 ...
- Centos 7 关闭firewall防火墙启用iptables防火墙
一.关闭firewall防火墙 1.停止firewall systemctl stop firewalld.service 2.禁止firewall开机启动 systemctl disable fir ...
- gitblit 搭建本地git服务器
本文主要描述gitblit搭建本地服务器
- 洛谷 1486 郁闷的出纳员【Treap】
[题意概述] 要求维护一个序列支持以下操作: 1,插入元素x: 2,把序列的所有元素加上x: 3,把序列的所有元素减去x,同时低于一个给定的下限的元素马上被删除: 4,询问序列中第k大的元素. [题解 ...
- TortoiseGit配置密钥的方法
TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥.使用命令ssh-keygen -C "邮箱地址" -t rsa产生的密钥在Tortoi ...
- python基础综合题----选自python二级考试
<笑傲江湖>是金庸的重要武侠作品之一.这里给出一个<笑傲江湖>的网络版本, 文件名为“笑傲江湖-网络版.txt”. ...