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对象 框架介绍 该框架主要用于数据库访问,封装了包括 ...
随机推荐
- 工作和面试中的gdb
gdb是C/C++程序员必备的专业技能,工作中gdb最常用的场景有两个,一个是分析core文件,另一个是调试程序. 分析core文件的方法如下: 1.gdb 程序名 core文件名 2.bt或wher ...
- 补交 20155202 蓝墨云班课 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能
蓝墨云班课 编写MyCP.java 要求: 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX ...
- 《Java 程序设计》课堂实践三
实践题目 编写MyOD.java 用java MyOD XXX实现Linux下od -tx -tc XXX的功能 提交测试代码和运行结果截图,加上学号水印,提交码云代码链接. 代码链接 代码链接 实践 ...
- 20155332 2016-2017-2 《Java程序设计》实验一 Java开发环境的熟悉
实验内容 使用JDK编译.运行简单的Java程序: 使用IDEA 编辑.编译.运行.调试Java程序. 实验知识点 JVM.JRE.JDK的安装位置与区别: 命令行运行javac:java:javac ...
- [BZOJ4712]洪水-[树链剖分+线段树]
Description 小A走到一个山脚下,准备给自己造一个小屋.这时候,小A的朋友(op,又叫管理员)打开了创造模式,然后飞到山顶放了格水.于是小A面前出现了一个瀑布.作为平民的小A只好老实巴交地爬 ...
- GBDT为什么不能并行,XGBoost却可以
传统的GBDT是以CART作为基分类器,xgboost还支持线性分类器,这个时候XGBOOST相当于带L1和L2正则化的逻辑斯蒂回归(分类问题)或者线性回归(回归问题).传统的GBDT在优化的hih只 ...
- [NOIp2018]铺设道路 贪心
LG传送门 考场上写的\(O(nlogn)\)做法,具体思想是把深度从低到高排个序,开一个标记数组,每次加入的时候标记当前位置并判断:如果当前加入的位置两边都被标记过,则下次的贡献-1,若两边都没有被 ...
- 属性文件操作之Properties与ResourceBundle
1.Properties与ResourceBundle 两个类都可以读取属性文件中以key/value形式存储的键值对,ResourceBundle读取属性文件时操作相对简单. 2.Propertie ...
- 在CentOS 7下编译安装Nginx+PHP+MySQL环境
本文转载自:http://www.softeng.cn/?p=156,本文已获得作者授权,未经作者同意,不可转载. 1.前言 本文适合于已经对Linux操作系统具有基本操作经验,并且能够在Linux或 ...
- idea scala 报 with UTF-8 Please try specifying another one using the -encoding option
现象如下图, 代码里有汉字,执行代码报错,说编码格式不对, 修改方式如上面,将右下角的编码格式修改成 u8即可.