ADO.NET 操作数据库 --- 01 简单封装
由于我是Java转的C#开始的时候就用的NHihernate,和EF 对ADO.NET使用较少,现在封装一个ADO.NET的工具类来实现数据库的操作,比较简单,望大家多多提意见。
如果大家有什么学习中需要用到的需求:可以给我留言,然后我完成后发出来
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
namespace Util
{
/// <summary>
/// 数据操作工具类
/// 作者:老郑
/// 日期:2016年7月25日
/// 版本:v1.1
/// </summary>
public class DBUtil
{
/// <summary>
/// 获取数据库连接
/// </summary>
/// <returns>返回一个新的数据库连接</returns>
public static SqlConnection GetSqlConnection()
{
string source = "server=(local);integrated security=SSPI;database=CYCOOHIS;";
return new SqlConnection(source);
}
/// <summary>
/// 执行SQL语句 - 为了保证数据的完整性开启了事务
/// </summary>
/// <param name="sql">SQL语句(多条SQL语句可以用分号隔开)</param>
/// <returns>返回受影响的行数</returns>
public static int SqlExecute(string sql)
{
SqlTransaction tran = null;
try
{
using (SqlConnection conn = GetSqlConnection())
{
conn.Open();
tran = conn.BeginTransaction();
SqlCommand cmd = new SqlCommand(sql, conn, tran);
int result = cmd.ExecuteNonQuery();
tran.Commit();
return result;
}
}
catch (SqlException e)
{
tran.Rollback();
throw;
}
}
/// <summary>
/// DataReader 方式读取数据
/// </summary>
/// <param name="sql">执行的SQL</param>
public static void Sql2DataReader(string sql)
{
try
{
using (SqlConnection conn = GetSqlConnection())
{
conn.Open();
SqlCommand cmd = new SqlCommand("select top 10 * from Base_Area", conn);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
// TODO 自己的代码
}
}
}
catch (SqlException e)
{
throw;
}
}
/// <summary>
/// 查询出DataSet
/// </summary>
/// <param name="sql">查询的SQL语句</param>
/// <returns></returns>
public static DataSet Sql2DataSet(string sql)
{
try
{
SqlDataAdapter da = null;
DataSet ds = new DataSet();
using (SqlConnection conn = GetSqlConnection())
{
conn.Open();
da = new SqlDataAdapter(sql, conn);
da.Fill(ds);
return ds;
}
}
catch (SqlException e)
{
throw;
}
}
/// <summary>
/// 查询并返回DataTable
/// </summary>
/// <param name="sql">查询的SQL语句</param>
/// <returns></returns>
public static DataTable Sql2DataTable(string sql)
{
];
}
}
}
源码地址:链接: http://pan.baidu.com/s/1jIHGwVs 密码: x4a3
ADO.NET 操作数据库 --- 01 简单封装的更多相关文章
- Asp.Net Core 2.0 项目实战(4)ADO.NET操作数据库封装、 EF Core操作及实例
Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...
- Win10 64位系统ADO方式操作数据库失败解决方法
VC操作Access数据库一般通过ODBC.ADO.DAO等方式,但在我的Win10 64位操作系统中,通过ADO方式操作数据库会失败,无法读取数据.解决方法:1.首先确保Win10操作系统ado目录 ...
- redis数据库操作的C++简单封装
用c++简单封装了redis的基本操作(hiredis) 接口包括:①链接和断开连接.②设置键值对(set).③查询键值对(get).④删除键值对(del).⑤将所有键显示出来 若任何一处发生错误,返 ...
- ADO.Net操作数据库的方式
1.使用数据提供程序执行sql或者ddl语句操作数据库. 2.使用oledb操作数据库 3.使用odbc操作数据库 4.使用DataSet操作数据库 前面3种方式都无法避免要使用sql语句,对不同种类 ...
- ADO.net操作数据库
今天整理硬盘,发现2年前开始着手开始学习C#的学习日记.陆续整理,一是自己的知识梳理梳理,二是希望与大家多多交流,能给初学者带来一定帮助,当然是更高兴的啦. 断线对象 另一类是与数据源无关的断线对象, ...
- ADO.NET操作数据库(一)
---恢复内容开始--- [1]ADO.Net简介2015-12-07-20:16:05 ADO.Net提供对Microsoft SQL Server数据源以及通过OLE DB和XML公开的数据源的一 ...
- C# ADO.NET操作数据库 SqlHelp.cs类
刚开始练习ADONET的时候,练习的一个SQLHelp.cs 数据库操作类,很简单,但是也很实用 using System; using System.Collections.Generic; us ...
- php操作数据库的简单示例
放假期间自己又写了几个简单的网页,但在服务器中打开时和在网站上打开时不一样,在服务器中打开的出现了错误,字体比一般的腰大好多,页面也相应地变大了,一些块即使用了浮动和clear浮动还是被遮住了,我只好 ...
- 使用ADO.NET操作数据库
如有转载的请注明出处!蟹蟹 1.1使用对象连接OLE DB 数据源 OLE DB 数据源包含具有OLE DB 驱动程序的任何数据源,如SQL Server.Access.Excel.Oracle等. ...
随机推荐
- IT第六天 - eclipse快捷操作、万年历项目的编写、菱形的打印输出、代码简化
IT第六天 上午 小项目 1.程序提前结束的退出标志 2.登录用户的模拟,给出适当的提示信息 3.根据要求,寻找规律,然后编写程序 Eclipse的使用 1.快捷键的使用 下午 中小项目 1.九九乘法 ...
- Hdu 1301 Jungle Roads (最小生成树)
地址:http://acm.hdu.edu.cn/showproblem.php?pid=1301 很明显,这是一道“赤裸裸”的最小生成树的问题: 我这里采用了Kruskal算法,当然用Prim算法也 ...
- 1298 The Hardest Problem Ever
题目链接:http://poj.org/problem?id=1298 思路分析:水题,字符偏移求解,注意字符串输入问题即可. 代码如下: #include <iostream> #inc ...
- 配置php网页显示错误
发现问题比解决问题重要,使用php集成开发环境Appserv网页会提示各种语法错误,但自己配置开发环境无法提示错误,特别当不是语法错误,比如com组件的调用,当不知道问题出现在何处,是不能忍受的,这时 ...
- ceph操作相关命令整合
ceph基本操作: /etc/init.d/ceph -a start/stop //即在所有节点上执行 单个操作: start/stop ceph-osd id={id} start/stop ce ...
- vs2013内置IISExpress相关问题
问题描述,以前做的程序迁移到vs2013后出现500.22问题. HTTP 错误 500.22 - Internal Server Error 检测到在集成的托管管道模式下不适用的 ASP.NET 设 ...
- 临时节点不能有child 子节点
[zk: 127.0.0.1:2181(CONNECTED) 67] create '/zk01/0001/aaaa' dada Ephemerals cannot have children: /z ...
- xen虚拟机安装实践
xen虚拟机环境安装,用了2天的时间摸索,终于出来了,给大家分享一下. 1.安装宿主环境,我使用的是Centos6.3 2.安装xend,参考了一篇老外的文章,基本比较顺利. 地址:http://xe ...
- MYSQL设计优化
本文将从各方面介绍优化mysql设计的一些方式. 1.优化sql语句 (1)定位须要优化的sql语句 1)show status统计SQL语句频率 对Myisam和Innodb存储引擎都计数的參数: ...
- Android平台调用Web Service:演示样例
近期在学习Android,随着移动设备的流行,当软件走上商业化的道路,为了争夺市场,肯定须要支持Android的,所以開始接触了Android,只是仅仅了解皮毛就好,由于我们要做管理者嘛,懂点Andr ...