制作ado开发辅助工具类SqlHelper
public static class SqlHelper
{
//通过配置文件获取连接字符创
private static readonly string constr = ConfigurationManager.ConnectionStrings["str"].ConnectionString;
/// <summary>
/// 执行增,删,改的方法
/// </summary>
/// <param name="sql">要执行的sql语句</param>
/// <param name="spt">参数化查询的参数</param>
/// <returns>影响的行数</returns>
public static int ExecuteNonquery(string sql, params SqlParameter[] spt)
{
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(sql, con))
{
con.Open();
if (spt != null)
{
cmd.Parameters.AddRange(spt);
}
return cmd.ExecuteNonQuery();
}
}
}
/// <summary>
/// 执行返回一行一列数据的方法
/// </summary>
/// <param name="sql"></param>
/// <param name="spt"></param>
/// <returns></returns>
public static object ExecuteScalar(string sql, params SqlParameter[] spt)
{
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(sql, con))
{
con.Open();
if (spt != null)
{
cmd.Parameters.AddRange(spt);
}
return cmd.ExecuteScalar();
}
}
}
/// <summary>
/// 执行查询语句的方法
/// </summary>
/// <param name="sql"></param>
/// <param name="spt"></param>
/// <returns>SqlDataReader类型</returns>
public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] spt)
{
SqlConnection con = new SqlConnection(constr);
using (SqlCommand cmd = new SqlCommand(sql, con))
{
if (spt != null)
{
cmd.Parameters.AddRange(spt);
} try
{
con.Open();
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception)
{
con.Close();
con.Dispose();
throw;
}
}
}
/// <summary>
/// 用到DataAdapter的方法,
/// </summary>
/// <param name="sql"></param>
/// <param name="spt"></param>
/// <returns>DataTable类型</returns>
public static DataTable ExecuteAdapter(string sql, params SqlParameter[] spt)
{
DataTable ds = new DataTable();
using (SqlDataAdapter da = new SqlDataAdapter(sql, constr))
{
if (spt != null)
{
da.SelectCommand.Parameters.AddRange(spt);
}
da.Fill(ds);
}
return ds; }
}
制作ado开发辅助工具类SqlHelper的更多相关文章
- ADO.NET复习总结(5)--工具类SqlHelper 实现登录
		
工具类SqlHelper 即:完成常用数据库操作的代码封装 一.基础知识1.每次进行操作时,不变的代码: (1)连接字符串:(2)往集合存值:(3)创建连接对象.命令对象:(4)打开连接:(5)执行命 ...
 - laravel 开发辅助工具
		
laravel 开发辅助工具 配置 添加服务提供商 将下面这行添加至 config/app.php 文件 providers 数组中: 'providers' => [ ... App\Plug ...
 - DbUtils是Apache出品一款简化JDBC开发的工具类
		
DbUtils - DbUtils是Apache出品一款简化JDBC开发的工具类 - 使用DbUtils可以让我们JDBC的开发更加简单 - DbUtils的使用: ...
 - 类型转换辅助工具类TypeCaseHelper
		
package org.sakaiproject.util; import java.math.BigDecimal; import java.sql.Date; import java.sql.Ti ...
 - 用Java开发一个工具类,提供似于js中eval函数功能的eval方法
		
今天在看到<Java疯狂讲义>中一个章节习题: 开发一个工具类,该工具类提供一个eval()方法,实现JavaScript中eval()函数的功能--可以动态运行一行或多行程序代码.例如: ...
 - Bytom Kit开发辅助工具介绍
		
Bytom Kit是一款为了帮助开发者更简单地理解Bytom的开发辅助工具,集合了校验.标注.解码.测试水龙头等功能. 该工具用python语言封装了一套比原的API和7个工具方法,如果有开发需求可以 ...
 - Shellcode开发辅助工具shellnoob
		
Shellcode开发辅助工具shellnoob Shellcode开发的过程中会遇到很多繁杂的工作,如编译.反编译.调试等.为了减少这部分工作,Kali Linux提供了开发辅助工具shelln ...
 - Android开发常用工具类
		
来源于http://www.open-open.com/lib/view/open1416535785398.html 主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前 ...
 - IOS开发--常用工具类收集整理(Objective-C)(持续更新)
		
前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...
 
随机推荐
- python模块中的特殊变量
			
37.模块的特殊变量: 显示模块中的变量 import s1 print(vars(s1)) 1.__doc__:打印注释信息. #!/usr/bin/env python # _ ...
 - javaWeb中一个按钮提交两个表单
			
一个按钮提交两个表单,有时候会用到,一般会很容易想到使用 onclick="document.form1.submit();document.form2.submit();" 的方 ...
 - 初识MVC模式
			
一.概念:MVC是 模型(Model),视图(View)和控制(Controller)的缩写,其目的实现Web系统的职能分工. 二.问题描述:通过一个简单的例子(计算圆面积)来体会MVC模式和普通的s ...
 - 将excel里面的数据导入到程序里面
			
页面布局 <table> <tr> <td style="padding-top: 16px; padding-left: 36px;"> &l ...
 - EntityFramework 插件之EntityFramework.Extended (批量处理)
			
接手了一个用EF来做的项目,由于项目中使用的原生处理,导致很多update都是采用先select 后 update的方式来实现,同时无法批量执行逻辑如:根据订单类型统一更新状态等.所以在经过了N多查找 ...
 - SparkContext自定义扩展textFiles,支持从多个目录中输入文本文件
			
需求 SparkContext自定义扩展textFiles,支持从多个目录中输入文本文件 扩展 class SparkContext(pyspark.SparkContext): def ...
 - Tuna项目总结
			
从8.19—9.13日一共四周的时间,我在Tuna项目组进行的我的第一次正式工作,以及学习.在此,我对这个阶段的工作及学习进行一个总结,主要分为对流程的理解和对自动化测试的应用两个方面. 在总结着两点 ...
 - JAVA中的Transient
			
Java中的transient,是用于声明序列化的时候不被存储的. 例子: package ThreadTest; /** * Created with IntelliJ IDEA. * User: ...
 - B - Dining - poj 3281(最大流)
			
题目大意:有一群牛,还有一些牛喜欢的食物和喜欢的饮料,不过这些牛都很特别,他们不会与别的牛吃同一种食物或者饮料,现在约翰拿了一些食物和饮料,同时他也知道这些牛喜欢的食物和饮料的种类,求出来最多能让多少 ...
 - 一种用单片机AD采样方式来检测交流市电电压的方法
			
下面介绍一种用单片机AD采样的方式检测市电电压的方法 要检测交流市电的电压,通常有两种方法 一.通过频繁的采样后再求平均值来获得实际电压值 二.通过采样交流市电的峰值,再通过算法得出实际电压值 这里 ...