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 类库的更多相关文章

  1. 同时使用ADO与Excel类库冲突的问题

    客户需要一个Demo程序实现Access数据库表导出到Excel表格,并将表中存储的照片(OLE对象)以其中一个字段(编号)命名存储到本地.程序中引入了ADO操作Access数据库("C:\ ...

  2. ADO.NET 【类库】【与数据库的连接】

    ADO.NET是什么,有什么用 数据库访问技术 ado.net可让开发人员以一致的方式存取资料来源, 资料共用的消费者应用程序可使用ado.net 来连接至这些资料来源,并且撷取.处理及更新其中所含的 ...

  3. ADO.NET通用类库

    using System.Data; using System.Data.SqlClient; namespace DataService { public class SQLHelper { pub ...

  4. ADO.NET DBHelper

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Da ...

  5. C#/ASP.NET完善的DBHelper,配套Model生成器

    支持Oracle.MSSQL.MySQL.SQLite四种数据库,支持事务,支持对象关系映射:已在多个项目中实际使用. 没有语法糖,学习成本几乎为0,拿来即用. DBHelper类完整代码: usin ...

  6. 30、ADO.NET、事务、DataSet

    ADO.NET ADO.NET是一组用于和数据源进行交互的面向对象类库.通常数据源是数据库,但也可以是文本文件.Excel表格.XML文件. 说白了就是使用.net操作数据库的一套类库. ADO.NE ...

  7. 简述ADO.NET(一)

    ADO.NET 宏观定义 传统ADO主要针对紧密连接的客户端/服务器端系统,而 ADO.NET考虑到了断开连接式应用并且引进了 Dateset 它代表任意数量的关联表,其中每个表都包含了行和列的集合的 ...

  8. ASP.NET快速学习方案(.NET菜鸟的成长之路)

    想要快速学习ASP.NET网站开发的朋友可以按照下面这个学习安排进度走.可以让你快速入门asp.net网站开发!但也局限于一般的文章类网站!如果想学习更多的技术可以跟着我的博客更新走!我也是一名.NE ...

  9. “Zhuang.Data”轻型数据库访问框架(一)开篇介绍

    目录: “Zhuang.Data”轻型数据库访问框架(一)开篇介绍 “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象 框架介绍 该框架主要用于数据库访问,封装了包括 ...

随机推荐

  1. 20155212 2016-2017-2 《Java程序设计》第5周学习总结

    20155212 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 Chapter8 就Java在异常处理的设计上,不鼓励捕捉InputMismatchExce ...

  2. 20155220吴思其 实验2 Windows口令破解

    实验目的: 了解Windows口令破解原理 对信息安全有直观感性认识 能够运用工具实现口令破解 实验人数 每组一人 系统环境 windows 实验工具 LC5 SuperDic 实验原理 口令破解方法 ...

  3. 【笔记学习】Linux系统与虚拟机学习

    Part 1 : 基于VirtualBox虚拟机安装Ubuntu 问题剪辑 --给一开始未知的我的科普指南 1. VirtualBox不能创建64位虚拟机 解决办法: 开启虚拟化技术 详细:重启电脑, ...

  4. 20145226夏艺华 《Java程序设计》预备作业3

    安装虚拟机 上学期开学的时候就安装了Linux虚拟机,由于我的是Mac OS,所以和windows下的安装有所不同. 我使用的是VirtualBoxVM虚拟机,稳定性还不错,需要的同学可以从https ...

  5. Centos安装man功能

    CentOS接触很久了,但是一直作为服务器端使用.这次之所以安装man,是由于开始学习Nginx了. 言归正传,安装man,首先得下载包.由于我们天朝的原因,代码包几乎下不到的.首先你得FQ,再下载, ...

  6. 【转载】DXUT进阶

    原文:DXUT进阶 概要 这个指南涵盖了更多DXUT的高级应用. 这个指南里的大部分功能是可选的, 为了以最小的代价来增强你的应用程序. DXUT提供了一个简单的基于GUI系统的精灵和一个设备设置对话 ...

  7. 新技能get,使用PHPStorm的deployment工具

    1. 工具栏 Tools - Deployment - Configuration 2. 添加一个服务端的配置信息 type 类型可以选择:FTP.local等. 填完信息别忘了点"Test ...

  8. AWVS11提取规则文件

    在这里给大家分享一个获取AWVS规则文件的思路.  目前我提取的是17年4月份的扫描规则.   后面如果规则更新,可以自行提取 官网:   https://www.acunetix.com/vulne ...

  9. Django模板层之templates

    一 模版简介 你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python代码之中. def current_datetime(request): now ...

  10. javaweb(三十七)——获得MySQL数据库自动生成的主键

    测试脚本如下: 1 create table test1 2 ( 3 id int primary key auto_increment, 4 name varchar(20) 5 ); 测试代码: ...