【C#】SQL数据库助手类2.0(自用)
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Text; namespace YcTools
{
/// <summary>C# SQL数据库助手类2.0</summary>
public class YSqlHelper
{
//Sql连接语句
/*注意引用System.Configuration
* <connectionStrings>
* <add name="YcSqlCon"
* connectionString="Data Source=服务器;Initial Catalog=数据库;User ID=登录名;Password=密码"
* providerName="System.Data.SqlClient"/>
* </connectionStrings>
*/
// private string connectionString = ConfigurationManager.ConnectionStrings["YcSqlCon"].ConnectionString;
private string connectionString = "";
public YSqlHelper(string sqlPath)
{
//实例化对应的数据库链接
connectionString = ConfigurationManager.ConnectionStrings[sqlPath].ConnectionString;
} /// <summary>执行不带参数的增删改SQL语句或存储过程 ,返回受影响的行数</summary>
public int ExecuteNonQuery(string cmdText)
{
int res = ;//受影响的行数
using (SqlConnection conn = new SqlConnection(connectionString))
{
try
{
conn.Open();//打开数据库链接
using (SqlCommand cmd = new SqlCommand(cmdText, conn))
{
cmd.CommandType = CommandType.Text;
res = cmd.ExecuteNonQuery();//执行Sql语句并受影响的行数
}
}
catch
{ }
finally
{
if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
{
conn.Close();//关闭与数据库的链接
}
}
}
return res;
} /// <summary> 执行带参数的增删改SQL语句或存储过程,返回受影响的行数</summary>
public int ExecuteNonQuery(string cmdText, SqlParameter[] paras)
{
int res = ;//受影响的行数
using (SqlConnection conn = new SqlConnection(connectionString))
{
try
{
conn.Open();//打开数据库链接
using (SqlCommand cmd = new SqlCommand(cmdText, conn))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddRange(paras);
res = cmd.ExecuteNonQuery();//执行Sql语句并受影响的行数
}
}
catch
{ }
finally
{
if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
{
conn.Close();//关闭与数据库的链接
}
}
}
return res;
} /// <summary> 执行不带参数的查询SQL语句或存储过程,返回DataTable对象</summary>
public DataTable ExecuteQueryDataTable(string cmdText)
{
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(connectionString))
{
try
{
conn.Open();//打开数据库链接
using (SqlCommand cmd = new SqlCommand(cmdText, conn))
{
cmd.CommandType = CommandType.Text;
using (SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
}
}
catch
{ }
finally
{
if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
{
conn.Close();//关闭与数据库的链接
}
}
}
return dt;
} /// <summary> 执行带参数的查询SQL语句或存储过程,返回DataTable对象</summary>
public DataTable ExecuteQueryDataTable(string cmdText, SqlParameter[] paras)
{
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(connectionString))
{
try
{
conn.Open();//打开数据库链接
using (SqlCommand cmd = new SqlCommand(cmdText, conn))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddRange(paras);
using (SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
}
}
catch
{ }
finally
{
if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
{
conn.Close();//关闭与数据库的链接
}
}
}
return dt;
} /// <summary> 执行不带参数的查询SQL语句或存储过程,返回DataSet对象</summary>
public DataSet ExecuteQueryDataSet(string cmdText)
{
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection(connectionString))
{
try
{
conn.Open();//打开数据库链接
using (SqlCommand cmd = new SqlCommand(cmdText, conn))
{
cmd.CommandType = CommandType.Text;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(ds, "ds");
}
}
}
catch
{ }
finally
{
if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
{
conn.Close();//关闭与数据库的链接
}
}
}
return ds;
} /// <summary> 执行带参数的查询SQL语句或存储过程,返回DataSet对象</summary>
public DataSet ExecuteQueryDataSet(string cmdText, SqlParameter[] paras)
{
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection(connectionString))
{
try
{
conn.Open();//打开数据库链接
using (SqlCommand cmd = new SqlCommand(cmdText, conn))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddRange(paras);
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(ds, "ds");
}
}
}
catch
{ }
finally
{
if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
{
conn.Close();//关闭与数据库的链接
}
}
}
return ds;
} /// <summary>查询数据是否存在</summary>
public bool ExecuteDataIsExistByData(string sqlStr)
{
bool iss = false;
DataSet ds = ExecuteQueryDataSet(sqlStr);
for (int i = ; i < ds.Tables.Count; i++)
{
if (ds.Tables[i].Rows.Count > ) iss = true;
}
return iss;
} /// <summary>查询数据是否存在 </summary>
public bool ExecuteDataIsExistByData(string sqlStr, SqlParameter[] paras)
{
bool iss = false;
DataSet ds = ExecuteQueryDataSet(sqlStr, paras);
for (int i = ; i < ds.Tables.Count; i++)
{
if (ds.Tables[i].Rows.Count > ) iss = true;
}
return iss;
} /// <summary>查询增删改数据操作是否成功 </summary>
public bool ExecuteDataIsExistByInt(string sqlStr)
{
int ds = ExecuteNonQuery(sqlStr);
bool iss = ds > ? true : false;
return iss;
} /// <summary>查询增删改数据操作是否成功 </summary>
public bool ExecuteDataIsExistByInt(string sqlStr, SqlParameter[] paras)
{
int ds = ExecuteNonQuery(sqlStr, paras);
bool iss = ds > ? true : false;
return iss;
}
}
}
【C#】SQL数据库助手类2.0(自用)的更多相关文章
- 【C#】SQL数据库助手类1.0(自用)
using System; using System.Collections.Generic; using System.Text; using System.Configuration; using ...
- 数据库助手类 DBHelper
using System; using System.Collections.Generic; using System.Text; using System.Configuration; using ...
- 操作Sql数据库帮助类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...
- 强类型sql生成助手类
不使用表达式树,使用强类型生成where子句,好处是性能高,相比表达式树生成的sql,10倍+ 目前只支持生成where条件.查询语句,后期会增加生成Update SQL where子句支持相等.比较 ...
- 个人博客设计:创建Sql数据库操作类。
整体的博客框架如下 数据库操作java类如下 package com.yxq.dao; import java.sql.Connection; import java.sql.DriverManage ...
- C#对SQL数据库操作类简介:Connection、Command、DataReader、DataSet、DataAdapter
在说C#操作数据库之前需要先说下ADO.NET.ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于在以往的Microsoft技术中访问数据.之所以使 ...
- .net C# Sql数据库SQLHelper类
using System;using System.Collections.Generic;using System.Text;using System.Collections;using Syste ...
- ADO.NET数据库操作助手类
SQL语句操作增删查改助手类 using System; using System.Collections.Generic; using System.Configuration; using Sys ...
- 使用sqlmetal工具自动生成SQL数据库的Linq类文件
第一部:找到sqlmetal.exe. 运行cmd. 执行命令 cd C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5 ...
随机推荐
- windows下react-native环境搭建
首先不得不先吐槽一下自己,一个坑总是踩很多次,且乐此不疲. 咋办? 写博客记录记录呗. 零.记录的点 Java环境的下载与配置 Android环境的下载与配置 Node环境的下载与配置 创建第一个re ...
- Python 学习之进制与编码
进制 日常生活中,我们最熟悉的数据就是十进制计数.它的数值部分由十个不同的数字符号0.1.2.3.4.5.6.7.8.9来表示,我们把这些数字符号叫做数码,表示十种不同的状态.数码处于不同的位置(或数 ...
- 数据库设计==>>MySchool
1.数据库设计的步骤 第一步:需求分析(收集信息) 第二步:绘制 E-R 图 (标示实体 ,找到实体的属性 第三步:将 E-R 图转换成数据库模型图 第四步:将数据库模型图转换成数据表 2.如何绘制 ...
- [Tool] 透过PowerPoint Online在部落格文章里内嵌简报
[Tool] 透过PowerPoint Online在部落格文章里内嵌简报 前言 讲课的时候,用PowerPoint做简报,好像已经成了讲课的惯例.而在课后,将课堂简报整理成部落格的文章,如果单纯是在 ...
- [Architecture Pattern] Singleton Locator
[Architecture Pattern] Singleton Locator 目的 组件自己提供Service Locator模式,用来降低组件的耦合度. 情景 在开发系统时,底层的Infrast ...
- js中的排序
不靠谱的sort() 众所周知,js中的sort()排序是按字母表顺序排序的,这就导致如下现象: var a = [9,60,111,55,8,7777]; a.sort(); alert(a); / ...
- WampServer搭建php环境可能遇到的问题
WampServer搭建php环境可能遇到的问题 1.安装时报错,缺少 MSVCR100.dll 文件 这是因为wampServer安装时用到的vc库没有更新,要安装更新之后再进行安装,因为之前安装的 ...
- offset笔记
1.offsetParent 2.offsetTop 3.offsetLeft 4.offsetWidth 5.offsetHeight offsetWidth是元素的可视宽度,这个宽度包括元素的边框 ...
- 在sap系统设置纸张打印格式(针式打印机)
在sap做一个打印报表,要先设置一个纸张打印格式,下面以工厂中常用来打印的针孔纸为例,在sap设置该纸张的打印格式,以用于报表: 1.运行事务代码SPAD:选择工具栏上的[完全管理]按钮——>选 ...
- C99标准的新特性
C语言标准的发展 C语言的发展历史大致上分为4个阶段:Old Style C.C89.C99和C11. C89是最早的C语言规范,于1989年提出,1990年先由ANSI(美国国家标准委员会,Amer ...