ADO.NET DBHelper 类库
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
namespace ADO1
{
public class DBHelper
{
public static string Message = string.Empty;
static SqlConnection conn = null;
/// <summary>
/// 连接数据库
/// </summary>
private static void OpenConn()
{
conn = new SqlConnection("Data Source=.;Initial Catalog=MySchoolBase;Integrated Security=True");
conn.Open();
}
/// <summary>
/// 执行增删改操作
/// </summary>
/// <param name="sql">要执行的SQL语句</param>
/// <returns>返回成功所影响的行数</returns>
public static int ExecuteCommand(string sql)
{
int ok = 0;
try
{
OpenConn();
SqlCommand cmd = new SqlCommand(sql, conn);
ok = cmd.ExecuteNonQuery();
Close();
}
catch (Exception e)
{
ok = -1;
Message = e.Message;
}
return ok;
}
/// <summary>
/// 执行查询返回单行单列的数值形式
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static int ExecuteScalar(string sql)
{
int ok = 0;
try
{
OpenConn();
SqlCommand cmd = new SqlCommand(sql,conn);
ok = Convert.ToInt32(cmd.ExecuteScalar());
Close();
}
catch (Exception e)
{
ok = -1;
Message = e.Message;
}
return ok;
}
public static DataTable GetDataTable(string sql)//使用Adapter对象连接数据库表(不传表名)
{
DataTable dt = new DataTable();
try
{
OpenConn();
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
adapter.Fill(dt);
Close();
}
catch (Exception e)
{
Message = e.Message;
}
return dt;
}
public static DataTable GetDataTable(string sql, string tableName)//使用Adapter对象连接数据库表
{
DataTable dt = new DataTable(tableName);
try
{
OpenConn();
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
adapter.Fill(dt);
Close();
}
catch (Exception e)
{
Message = e.Message;
}
return dt;
}
/// <summary>
/// 执行查询
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static SqlDataReader ExecuteReader(string sql)
{
SqlDataReader rs = null;
try
{
OpenConn();
SqlCommand cmd = new SqlCommand(sql,conn);
rs = cmd.ExecuteReader();
}
catch (Exception e)
{
Message = e.Message;
}
return rs;
}
/// <summary>
/// 关闭数据库连接
/// </summary>
public static void Close()
{
if (conn != null)
{
conn.Close();
}
}
}
}
ADO.NET DBHelper 类库的更多相关文章
- 同时使用ADO与Excel类库冲突的问题
客户需要一个Demo程序实现Access数据库表导出到Excel表格,并将表中存储的照片(OLE对象)以其中一个字段(编号)命名存储到本地.程序中引入了ADO操作Access数据库("C:\ ...
- ADO.NET 【类库】【与数据库的连接】
ADO.NET是什么,有什么用 数据库访问技术 ado.net可让开发人员以一致的方式存取资料来源, 资料共用的消费者应用程序可使用ado.net 来连接至这些资料来源,并且撷取.处理及更新其中所含的 ...
- ADO.NET通用类库
using System.Data; using System.Data.SqlClient; namespace DataService { public class SQLHelper { pub ...
- ADO.NET DBHelper
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Da ...
- C#/ASP.NET完善的DBHelper,配套Model生成器
支持Oracle.MSSQL.MySQL.SQLite四种数据库,支持事务,支持对象关系映射:已在多个项目中实际使用. 没有语法糖,学习成本几乎为0,拿来即用. DBHelper类完整代码: usin ...
- 30、ADO.NET、事务、DataSet
ADO.NET ADO.NET是一组用于和数据源进行交互的面向对象类库.通常数据源是数据库,但也可以是文本文件.Excel表格.XML文件. 说白了就是使用.net操作数据库的一套类库. ADO.NE ...
- 简述ADO.NET(一)
ADO.NET 宏观定义 传统ADO主要针对紧密连接的客户端/服务器端系统,而 ADO.NET考虑到了断开连接式应用并且引进了 Dateset 它代表任意数量的关联表,其中每个表都包含了行和列的集合的 ...
- ASP.NET快速学习方案(.NET菜鸟的成长之路)
想要快速学习ASP.NET网站开发的朋友可以按照下面这个学习安排进度走.可以让你快速入门asp.net网站开发!但也局限于一般的文章类网站!如果想学习更多的技术可以跟着我的博客更新走!我也是一名.NE ...
- “Zhuang.Data”轻型数据库访问框架(一)开篇介绍
目录: “Zhuang.Data”轻型数据库访问框架(一)开篇介绍 “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象 框架介绍 该框架主要用于数据库访问,封装了包括 ...
随机推荐
- 5.18-笨办法学python-习题14
有了习题13的基础,习题14就不是问题了. 这一节主要是一个简单的提示符.提示符就是像">"这个的东西,因为我们之前用input的时候,它是用来让用户输入的,可是平常人并不知 ...
- django无法加载样式
如果运行的环境是win10,那么首先应该考虑是否是如下问题 win10中Django后台admin无法加载CSS等样式 解决: 修改win10的注册表:[win+R输入Regedit] 因为你安装的某 ...
- 20155204 2016-2017-2 《Java程序设计》第4周学习总结
20155204 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承是类与类之间的联系,接口是方法与类之间的联系,多态就是指利用接口和继承来派生许多类. 有 ...
- 20155212 实验二 Java面向对象程序设计
20155212 实验二 Java面向对象程序设计 单元测试 三种代码 用编程去解决问题,必须学会写三种码: 伪代码 产品代码 测试代码 例: MyUtil 类解决一个百分制成绩转成"优.良 ...
- rman中 Backup Set 与 Image Copy 优缺点比较
Backup Set: 一个备份集中可以包含多个数据文件,存储High Water Mark 下的数据块,并且可以采用压缩方式进行,故大小要小于原始数据文件的大小.restore与 recover的开 ...
- GlusterFS学习之路(三)客户端挂载和管理GlusterFS卷
一.客户端挂载 可以使用Gluster Native Client方法在GNU / Linux客户端中实现高并发性,性能和透明故障转移.可以使用NFS v3访问gluster卷.已经对GNU / Li ...
- Nginx入门篇(六)之反向代理和负载均衡
一.Nginx负载均衡集群 介绍 负载均衡(Load Balance)集群提供了一种行之有效的办法,来扩展网络设备和服务器负载.带宽和吞吐量,同时加强了网络数据处理能力,提供了网络的灵活性和可用性. ...
- sqlserver2008 数据库
删除数据库提示: 无法对 数据库'DBName' 执行 删除,因为它正用于复制 之前建立过此数据库的发布订阅,但是后来删掉了发布订阅,也将对应的作业停止了,仍然报这个错,遂用此命令强制删除发布: sp ...
- Linux 的字符串截取
假设有变量 var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// ...
- java阻塞队列之LinkedBlockingQueue
LinkedBlockingQueue是BlockingQueue中的其中一个,其实现方式为单向链表,下面看其具体实现.(均为JDK8) 一.构造函数 在LinkedBlockingQueue中有三个 ...