用于MySql的SqlHelper

     /// <summary>

     /// Title  :MySqlHelper
/// Author :WinterT
/// Date :2015-1-8 08:12:54
/// Description:
/// ExecuteNonQuery
/// ExecuteScalar
/// ExecuteReader
/// ExecuteTable
/// </summary>
public static class MySqlHelper
{
/// <summary>
/// 返回配置文件中指定的连接
/// </summary>
/// <returns>配置文件中指定的连接</returns>
private static MySqlConnection GetConnection()
{
string connString = ConfigurationManager.ConnectionStrings[].ConnectionString;
return new MySqlConnection(connString);
}
#region ExecuteNonQuery
/// <summary>
/// 执行sql语句
/// </summary>
/// <param name="sql">sql语句</param>
/// <returns>受影响行数</returns>
public static int ExecuteNonQuery(string sql)
{
using (MySqlConnection conn = GetConnection())
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
return cmd.ExecuteNonQuery();
}
}
}
/// <summary>
/// 根据给定连接,执行带参数的SQL语句
/// </summary>
/// <param name="conn">连接、使用前确保连接以打开。</param>
/// <param name="sql">带参数的sql语句</param>
/// <param name="paras">参数</param>
/// <returns>受影响行数</returns>
public static int ExecuteNonQuery
(MySqlConnection conn, string sql, params MySqlParameter[] paras)
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(paras);
return cmd.ExecuteNonQuery();
}
}
/// <summary>
/// 执行带参数的SQL语句
/// </summary>
/// <param name="sql">带参数的sql语句</param>
/// <param name="paras">参数</param>
/// <returns>受影响行数</returns>
public static int ExecuteNonQuery
(string sql, params MySqlParameter[] paras)
{
using (MySqlConnection conn = GetConnection())
{
return ExecuteNonQuery(conn, sql, paras);
}
}
#endregion
#region ExecuteScalar
/// <summary>
/// 执行sql语句,返回第一行第一列
/// </summary>
/// <param name="sql">sql语句</param>
/// <returns>第一行第一列</returns>
public static Object ExecuteScalar(string sql)
{
using (MySqlConnection conn = GetConnection())
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
return cmd.ExecuteScalar();
}
}
}
/// <summary>
/// 根据Connection对象,执行带参数的sql语句,返回第一行第一列
/// </summary>
/// <param name="conn">连接</param>
/// <param name="sql">sql语句</param>
/// <param name="paras">参数</param>
/// <returns>返回第一行第一列</returns>
public static object ExecuteScalar
(MySqlConnection conn, string sql, MySqlParameter[] paras)
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(paras);
return cmd.ExecuteScalar();
}
}
/// <summary>
/// 执行带参数的sql语句,返回第一行第一列
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="paras">参数</param>
/// <returns>返回第一行第一列</returns>
public static object ExecuteScalar
(string sql, MySqlParameter[] paras)
{
using (MySqlConnection conn = GetConnection())
{
return ExecuteScalar(conn, sql, paras);
}
}
#endregion
#region ExecuteReader
/// <summary>
/// 执行sql语句,返回一个MySqlDataReader
/// </summary>
/// <param name="sql">sql语句</param>
/// <returns>一个MySqlDataReader对象</returns>
public static MySqlDataReader ExecuteReader(string sql)
{
MySqlConnection conn = GetConnection();
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
conn.Open();
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
}
/// <summary>
/// 根据指定的连接,执行带参数的sql语句,返回一个Reader对象
/// </summary>
/// <param name="conn">连接</param>
/// <param name="sql">sql语句</param>
/// <param name="paras">参数</param>
/// <returns>一个MySqlDataReader对象</returns>
public static MySqlDataReader ExecuteReader
(MySqlConnection conn, string sql, params MySqlParameter[] paras)
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(paras);
conn.Open();
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
}
/// <summary>
/// 执行带参数的sql语句,返回一个Reader对象
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="paras">参数</param>
/// <returns>一个MySqlDataReader对象</returns>
public static MySqlDataReader ExecuteReader
(string sql, params MySqlParameter[] paras)
{
MySqlConnection conn = GetConnection();
using (MySqlCommand cmd = conn.CreateCommand())
{
return ExecuteReader(conn, sql, paras);
}
}
#endregion
#region ExecuteTable
/// <summary>
/// 执行sql语句,返回一个DataTable
/// </summary>
/// <param name="sql">sql语句</param>
/// <returns>DataTable</returns>
public static DataTable ExecuteTable(string sql)
{
using (MySqlConnection conn = GetConnection())
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
using (MySqlDataReader reader = cmd.ExecuteReader())
{
DataTable table = new DataTable();
table.Load(reader);
return table;
}
}
}
}
/// <summary>
/// 根据连接,执行带参数的sql语句,返回一个DataTable
/// </summary>
/// <param name="conn">连接,切记连接已打开</param>
/// <param name="sql">sql语句</param>
/// <param name="paras">参数</param>
/// <returns>DataTable</returns>
public static DataTable ExecuteTable
(MySqlConnection conn, string sql, params MySqlParameter[] paras)
{
using (MySqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(paras);
using (MySqlDataReader reader = cmd.ExecuteReader())
{
DataTable table = new DataTable();
table.Load(reader);
return table;
}
}
}
/// <summary>
/// 执行带参数的sql语句
/// </summary>
/// <param name="sql">sql语句</param>
/// <param name="paras">参数</param>
/// <returns>DataTable</returns>
public static DataTable ExecuteTable
(string sql, params MySqlParameter[] paras)
{
using (MySqlConnection conn = GetConnection())
{
return ExecuteTable(conn, sql, paras);
}
} #endregion
}

用于MySql的SqlHelper的更多相关文章

  1. mysqldump常用于MySQL数据库逻辑备份

    mysqldump常用于MySQL数据库逻辑备份. 1.各种用法说明 A. 最简单的用法: mysqldump -uroot -pPassword [database name] > [dump ...

  2. 用于Mysql操作的MySqlHelper类

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Te ...

  3. 清晰讲解SQL语句中的外连接,通用于Mysql和Oracle,全是干货哦

    直入主题: 我们做一个操作,将员工SCOTT的部门去掉,再次通过内连接查看数据,看看会产生什么现象? 使用内连接,查询数据 问题:找不到SCOTT员工了,只有13条数据,这显然不合理:这就是内连接的缺 ...

  4. 清晰讲解SQL语句中的内连接,通用于Mysql和Oracle,全是干货哦

    本文章目的:力求清晰明了讲解SQL语句的内连接的各种应用,没有深奥的理解! 前奏:这篇文章和下篇文章会将内连接和外连接讲解清楚SQL语句的多表查询常用的有以下几种:两表联合查询(1)内连接(2)外连接 ...

  5. 从Word中拷贝字段用于MySQL建表

    1.SQL 基础表 建立 USE [Test] GO /****** Object: Table [dbo].[CreateTable] Script Date: 10/17/2016 14:07:1 ...

  6. 用于Simple.Data的ASP.NET Identity Provider

    今天推举的这篇文章,本意不是要推举文章的内容,而是据此介绍一下Simple.Data这个很有意思的类ORM工具. 现在大家在.NET开发中如果需要进行数据访问,那么基本都会使用一些ORM工具,比如微软 ...

  7. MysQL使用一与Python交互

    与python交互 在熟练使用sql语句的基础上,开始使用python语言提供的模块与mysql进行交互 这是我们在工作中大事要做的事 先学会sql是基础,一定要熟练编写sql语句 安装引入模块 安装 ...

  8. 开发使用mysql的一些必备知识点整理(四)与python交互

    与python交互 在熟练使用sql语句的基础上,开始使用python语言提供的模块与mysql进行交互 这是我们在工作中大事要做的事 先学会sql是基础,一定要熟练编写sql语句 安装引入模块 安装 ...

  9. 我的MYSQL学习心得(六) 函数

    我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

随机推荐

  1. jquery树形菜单完整代码

    本实例实现了树形的动态菜单,兼容IE8,火狐,Chrome等浏览器.使用了jQuery的toggle() 方法.效果和代码如下: <!DOCTYPE html PUBLIC "-//W ...

  2. Java反射机制探秘

    如何获得Class对象     1.针对每一个对象.getCalss(),可以得到对应的Class. 2.Class.forName(String),String的写法:包名.类名.就会创建包名.类名 ...

  3. Thinkpad X240在Centos 7下使用ID 138a:0017或者vfs5011指纹识别

    我的笔记本是ThinknPad X240,自带的指纹识别器,通过命令lsusb可以查看: [zz@zz ~]$ lsusb Bus 001 Device 002: ID 24ae:2003 Bus 0 ...

  4. [ActionScript 3.0] AS3动画类Tweener中滤镜的运用

    package { import caurina.transitions.Tweener; import caurina.transitions.properties.FilterShortcuts; ...

  5. DimDate

    CREATE TABLE [dbo].[DimDate]( [DateKey] int NOT NULL , [FullDate] DATE NOT NULL , [MonthNumberOfYear ...

  6. 小知识:如何解压cpio.gz文件

    第一种方法: zcat xxxx.cpio.gz | cpio -idmv 第二种方法 :第一步: gunzip xxxx.cpio.gz第二步:cpio -idmv < xxxx.cpio # ...

  7. 使用Semaphore控制并发访问

    Semaphore,信号量. 用在多线程环境下对共享资源访问的一种协调机制. 当一个线程想要访问共享的资源时,这个线程需要获取Semaphore,如果Semaphore内部计数器的值大于0,Semap ...

  8. Linux驱动之准备

    第一: 开始系统学习Linux驱动,以前断断续续也玩玩了一下,开贴来系统学习Linux驱动. 硬件平台是JZ2440-4.3 ARM9开发板,开发板运行系统版本Linux3.4.2内核(内核移植,下载 ...

  9. Oracle Cluster Registry Location to be Added is not Accessible

    APPLIES TO: Oracle Server - Enterprise Edition - Version 11.2.0.1 and laterInformation in this docum ...

  10. Redis服务器配置

    Redis 服务器提供了一些配置选项(configuration option),通过修改这些选项的值,可以改变选项对应功能的行为. 比如:介绍 SELECT 命令时曾经说过,Redis 服务器默认会 ...