封装sqlhelper类
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
namespace WXCustomerCard.DataAccess {
public class DataBase {
private string connectionString ="server=.;uid=sa;password=123456;Database=WXCustomerCard;max pool size=1000";//server=120.24.159.211;uid=sa;password=20894796@qq.com;Database=WXCustomerCard;max pool size=1000
//private string connectionString = "server=120.24.159.211;uid=sa;password=20894796@qq.com;Database=WXCustomerCard;max pool size=1000";//"server=.;uid=sa;password=123456;Database=WXCustomerCard;max pool size=1000";//server=120.24.159.211;uid=sa;password=20894796@qq.com;Database=WXCustomerCard;max pool size=1000
public DataBase() {
}
public DataBase(string conStr) {
connectionString = conStr;
}
public object ExecuteScalar(string sql,List< DbParameter> parameters = null) {
try {
using (SqlConnection connection = new SqlConnection(connectionString)) {
using (SqlCommand command = connection.CreateCommand()) {
command.CommandType = CommandType.Text;
command.CommandText = sql;
if (parameters != null && parameters.Count > 0) {
foreach (SqlParameter item in parameters) {
command.Parameters.Add(item);
}
}
connection.Open();
var data = command.ExecuteScalar();
command.Parameters.Clear();
return data;
}
}
}
catch (Exception ex) {
throw ex;
}
}
public bool ExecuteNonQuery(string sql, List<DbParameter> parameters = null) {
try {
using (SqlConnection connection = new SqlConnection(connectionString)) {
using (SqlCommand command = connection.CreateCommand()) {
command.CommandType = CommandType.Text;
command.CommandText = sql;
if (parameters != null && parameters.Count > 0) {
foreach (SqlParameter item in parameters) {
command.Parameters.Add(item);
}
}
connection.Open();
return command.ExecuteNonQuery() > 0;
}
}
}
catch (Exception ex) {
throw ex;
}
}
public List<T> ExecuteReader<T>(string sql, List<DbParameter> parameters = null) where T : class, new() {
try {
using (SqlConnection connection = new SqlConnection(connectionString)) {
using (SqlCommand command = connection.CreateCommand()) {
command.CommandType = CommandType.Text;
command.CommandText = sql;
if (parameters != null && parameters.Count > 0) {
foreach (SqlParameter item in parameters) {
command.Parameters.Add(item);
}
}
connection.Open();
T t = new T();
var task = command.ExecuteReader();
List<T> list = DataConvert.DataReaderToEntities<T>(task);
if (list != null && list.Count > 0) {
return list;
}
return null;
}
}
}
catch (Exception ex) {
throw ex;
}
}
}
}
封装sqlhelper类的更多相关文章
- ado.net的简单数据库操作(二)之封装SqlHelperl类
今天我书接上回,接着昨天的ado.net的数据库操作的相关知识来讲哈! 从上篇文章给出的实例来看,你一定会发现,操作数据库其实还挺麻烦的,就连一个最简单的数据库操作语句都要包括 定义数据库连接字符串. ...
- JAVA WEB SQLHelper类的封装
在这次做项目中,我对自己最满意的就是封装了一下SQLHelper类,我对自己感到骄傲主要是 我是初学者,我刚开始不知道可以这样做,我只是想着试着去这样做了,结果真的可以,所以我 在我的模块就自己封装了 ...
- C#封装CRUD到SqlHelper类解读
1.简单说明一下,一般情况下,数据库连接字符串是在App.config文件中进行配置,然后再在代码中进行引用.因此,我们在这里先看一下App.config文件. 首先看需要添加的内容: 参数说明: n ...
- ADO.NET复习——自己编写SqlHelper类
今天复习了一次ADO.NET基础,整理一下自己的认为的重点: 编写SqlHelper类,方便我们执行数据库语句,这时可以直接调用封装在SqlHelper类的方法.现在大多数公司面试的时候,给你的面试题 ...
- 【转载】微软官方提供的Sqlserver数据库操作帮助类SQLHelper类
在.NET平台中,C#语言一般使用ADO.NET组件来操作Sqlserver数据库,通过ADO.NET组件可以实现连接数据库.查询数据集.执行SQL语句以及关闭数据库连接等操作,为此网上有很多开发者自 ...
- 微软官方SqlHelper类 数据库辅助操作类
数据库操作类真的没有必要自己去写,因为成熟的类库真的非常完善了,拿来直接用就好,省时省力. 本文就为大家介绍微软官方的程序PetShop4.0中的SqlHelper类,先来做一下简单的介绍,PetSh ...
- 数据操作的封装--sqlhelper
为了提高软件的灵活性和可维护性,软件的代码须要科学的管理.我们引入了架构这个词.设计模式提醒我们,软件中反复性的代码须要封装起来. 近期在做收费系统时.须要和数据库进行频繁的联系.既然是反复的使用,就 ...
- SpringMVC 自动封装枚举类的方法
springmvc默认无法自动封装枚举类,解决方法如下: 1.枚举类 public enum GoodsPromoteEnum { /** * 0 精品 */ fine("精品", ...
- 最新的SqlHelper 类
最新的SqlHelper 类 摘自:http://www.cnblogs.com/sufei/archive/2010/01/14/1648026.html using System; using S ...
随机推荐
- StructureMap经典的IoC/DI容器
StructureMap是一款很老的IoC/DI容器,从2004年.NET 1.1支持至今. 一个使用例子 //创建业务接口 public interface IDispatchService { } ...
- javascript之ProtoBuf在websocket中的使用
因为ProtoBuf的序列化效率和大小都非常好,所以它在网络通信上面应用越来越多:而webosocket也随着web3.0应用越来越广泛,而将这两个结合在一起的也会慢慢形成一种趋势:本人是为了测试自已 ...
- java excel导出
下面是jsp代码: <li class="btns"><input id="btnExport" class="btn btn-pr ...
- 第一章:pip 安装 tar.gz 结尾的文件 和 .whl 结尾的文件
1. 假如后缀中还有 .tar.gz 的文件通过 pip 命令进行安装步骤. .单击 .tar.gz结尾的文件,并且对文件进行解压,进入到解压目录中,通过python命令进行安装. 命令如下:在dos ...
- javascript闭包的妙用——实现函数的重载
最近在看John Resig 与 Bear Bibeault的<JavaScript 忍者秘籍>.这本书处处提现了js的魔法(从我这个写强类型语言的人看来).js能够点石成金,处处体现着它 ...
- [图形学] Chp18 OpenGL表面纹理函数
以2D表面为例展示纹理贴图,用opengl设置一个2D纹理,颜色存储在32*32*3的数组中,对应的纹理坐标为0<=s, t<=1.0. 画出几个正方形表面,分别以GL_CLAMP(纹理坐 ...
- 通用JSONHelp 的通用的封装
1. 最近项目已经上线了 ,闲暇了几天 想将JSON 的序列化 以及反序列化进行重新的封装一下本人定义为JSONHelp,虽然Microsoft 已经做的很好了.但是我想封装一套为自己开发的项目使用 ...
- eclipse 常用快捷键 及 windows快捷键
Eclipse常用快捷键 打开Eclipse快捷键的快捷键 Ctrl+Shift+L 快捷键 描述 原英文描述 Ctrl+Shift+P 定位到光标所在处的括号的另一半括号的位置 Go to Matc ...
- BottomupSort算法 c++代码实现
#include <iostream> using namespace std; #define N 100 int A[N]; static int n; void Initial() ...
- 为什么不需要为Python对象添加 getter 和 setter
Getter 和 setter在java中被广泛使用.一个好的java编程准则为:将所有属性设置为私有的,同时为属性写getter和setter函数以供外部使用. 这样做的好处是属性的具体实现被隐藏, ...