博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQLHelp sql数据库的DAL
阅读量:6801 次
发布时间:2019-06-26

本文共 3834 字,大约阅读时间需要 12 分钟。

连接SQL数据的DAL
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Configuration; using System.Data.SqlClient; using System.Data; namespace DAL {
public class SqlHelper {
//连接字符 public static string sqlconnstring = ConfigurationManager.ConnectionStrings["conn"].ConnectionString; #region 一个已经连接等待使用的对象 /// /// 创建一个连接好并等待使用的对象 /// /// 连接字符串 /// 已经建立的SqlCommand对象 /// 连接类型(存储过程还是字符串) /// 存储过程名或者SQL语句 /// 参数列表 public static void PrepareCommand(SqlConnection conn, SqlCommand cmd, CommandType cmdType, string sqlText, SqlParameter[] parms) {
//判断数据库的连接状态 if (conn.State != ConnectionState.Open) {
conn.Open(); } cmd.Connection = conn;//传递连接字符串 cmd.CommandText = sqlText;//存储过程名或者SQL语句 cmd.CommandType = cmdType;//连接类型 if (parms != null)//如果参数列表不为空 {
foreach (var item in parms) {
cmd.Parameters.Add(item); } } } #endregion #region ExecuteNonQuery /// /// 执行一个返回影响行数的SQLCommand命令 /// /// 连接字符串 /// 命令类型(存储过程,Sql语句) /// 存储过程名称,或者Sql语句 /// 参数列表 ///
返回数据库中受到影响的行数
public static int ExecuteNonQuery(string connentionstring, CommandType cmdType, string sqlText, SqlParameter[] parms) {
SqlCommand cmd = new SqlCommand(); try {
using (SqlConnection conn = new SqlConnection(connentionstring)) {
PrepareCommand(conn, cmd, cmdType, sqlText, parms); int value = cmd.ExecuteNonQuery(); return value; } } catch (Exception e) {
throw e; } } #endregion #region ExecuteReader /// /// 一个顺序只读的SqlCommand对象 /// /// 连接字符串 /// 连接类型(存储过程,或者SQL语句) /// 存储过程名或者SQL语句 /// 数组话的参数列表 ///
返回 一个SqlDataReader类型的结果集
public static SqlDataReader ExecuteReader(string connectionString, CommandType cmdType, string sqlText, SqlParameter[] parms) {
SqlCommand cmd = new SqlCommand(); SqlConnection conn = new SqlConnection(connectionString); try {
PrepareCommand(conn, cmd, cmdType, sqlText, parms); SqlDataReader sdr = cmd.ExecuteReader(); return sdr; } catch {
conn.Close(); throw; } } #endregion #region ExecuteScalar /// /// 执行一个返还第一行第一列的SqlCommand /// /// 连接字符串 /// 连接类型(存储过程,SQL语句) /// 存储过程名或者需要执行的SQL语句 /// 参数列表 ///
返还一个Object 类型的值,使用过程中需要做类型转换
public static object ExecuteScalar(string connectionString, CommandType cmdtype, string sqltext, SqlParameter[] parms) {
SqlCommand cmd = new SqlCommand(); using (SqlConnection conn = new SqlConnection(connectionString)) {
PrepareCommand(conn, cmd, cmdtype, sqltext, parms); Object obj = cmd.ExecuteScalar(); return obj; } } #endregion #region ExecuteDataset /// /// 执行一个返回DataSet集 /// /// 连接字符串 /// 连接类型(存储过程,SQL语句) /// 需要执行的SQL语句或存储过程名 /// 参数列表 ///
返回一个DataSet集
public static DataSet ExecuteDataset(string connectionString, CommandType cmdType, string sqltext, SqlParameter[] parms) {
SqlCommand cmd = new SqlCommand(); using (SqlConnection conn = new SqlConnection(connectionString)) {
PrepareCommand(conn, cmd, cmdType, sqltext, parms); using (SqlDataAdapter sda = new SqlDataAdapter(cmd)) {
DataSet ds = new DataSet(); sda.Fill(ds); return ds; } } } #endregion } }

 

转载于:https://www.cnblogs.com/SkyGrain/archive/2012/03/15/2397807.html

你可能感兴趣的文章
投篮游戏选择点——自我认可和责任测试
查看>>
Jar与外部文件的信息交互
查看>>
做企业不能有上帝的情怀
查看>>
FireEye:K3chang行动***欧洲外交部门
查看>>
Lync 小技巧-39-批量-设置-AD-分机-手机-启用-Lync-设置-Lync-分机
查看>>
关于Spring MVC 4,你需要知道的那些事
查看>>
如何远程调试Python代码
查看>>
你会用Python写洗脑神曲吗?
查看>>
kubernetes集群配置serviceaccount
查看>>
MyBatis多参数传递之默认命名方式示例——MyBatis学习笔记之十二
查看>>
Exchange 2013部署系列之(六)配置邮件流和客户端访问
查看>>
创业三年,走通一条路
查看>>
Mac 平台下功能强大的Shimo软件使用指南
查看>>
Hyper-V 3中虚拟机CPU竞争机制
查看>>
移动搜索的4个主要入口
查看>>
Win32 文件(3)
查看>>
Redhat Linux AS,ES,WS有何区别?CentOS是什么?和Redhat什么关系?
查看>>
将动态aspx页面转换成为静态html页面的几种方法
查看>>
Asp.net模板页的使用
查看>>
WCF 第十三章 可编程站点 寄宿站点
查看>>