using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.OleDb;
using System.Configuration;
namespace OleDbHelper
{
public static class OleDbHelper
{
private static OleDbConnection connection;
/// <summary>
/// 获得一个唯一的CONNECTION 实例
/// </summary>
public static OleDbConnection Connection
{
get
{
string connectionstring = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source=db.mdb;"; if (connection == null)
{
connection = new OleDbConnection(connectionstring);
connection.Open();
}
else if (connection.State == System.Data.ConnectionState.Closed)
{
connection.Open(); }
else if (connection.State == System.Data.ConnectionState.Broken)
{
connection.Close();
connection.Open();
}
return connection;
}
}
/// <summary>
/// 返回执行SQL 语句所影响数据的行数
/// </summary>
/// <param name="sql">sql 语句</param>
/// <returns>影响行数</returns>
public static int ExecuteCommand(string sql)
{
OleDbCommand com = new OleDbCommand(sql, Connection);
int result = com.ExecuteNonQuery();
return result;
}
/// <summary>
/// 获取结果集的第一行第一列
/// </summary>
/// <param name="sql"></param>
/// <returns></returns>
public static int GetScalar(string sql)
{
OleDbCommand com = new OleDbCommand(sql, Connection);
int result = int.Parse(com.ExecuteScalar().ToString());
return result;
}
/// <summary>
/// 执行Sql语句,获取DataTable结果集
/// </summary>
/// <param name="sql">SQL语句</param>
/// <returns>DataTable</returns>
public static DataTable GetDataTable(string sql)
{
DataSet dataset = new DataSet();
OleDbCommand com = new OleDbCommand(sql, Connection);
OleDbDataAdapter da = new OleDbDataAdapter(com);
da.Fill(dataset);
return dataset.Tables[];
}
/// <summary>
/// 执行Sql语句,获取DataSet结果集
/// </summary>
/// <param name="sql">SQL语句</param>
/// <returns>DataSet</returns>
public static DataSet GetDataSet(string sql)
{
DataSet dataset = new DataSet();
OleDbCommand com = new OleDbCommand(sql, Connection);
OleDbDataAdapter da = new OleDbDataAdapter(com);
da.Fill(dataset);
return dataset;
}
/// <summary>
/// 获取OleDbDataReader结果集
/// </summary>
/// <param name="sql">SQL语句</param>
/// <returns>OleDbDataReader</returns>
public static OleDbDataReader GetReader(string sql)
{
OleDbCommand com = new OleDbCommand(sql, Connection);
OleDbDataReader reader = com.ExecuteReader();
return reader;
}
/// <summary>
/// 执行SQL语句
/// </summary>
/// <param name="SQLString">SQL语句</param>
/// <param name="cmdParms">参数</param>
/// <returns>影响行数</returns>
public static int ExecuteSql(string SQLString, params OleDbParameter[] cmdParms)
{
OleDbCommand com = new OleDbCommand(SQLString, Connection);
PrepareCommand(com, Connection, null, SQLString, cmdParms);
int rows = com.ExecuteNonQuery();
com.Parameters.Clear();
return rows;
}
/// <summary>
/// 获取DataSet结果集
/// </summary>
/// <param name="SQLString">SQL语句</param>
/// <param name="cmdParms">参数</param>
/// <returns>DataSet</returns>
public static DataSet GetDataSet(string SQLString, params OleDbParameter[] cmdParms)
{
OleDbCommand cmd = new OleDbCommand(SQLString, Connection);
PrepareCommand(cmd, Connection, null, SQLString, cmdParms);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
DataSet ds = new DataSet();
try
{
if (connection.State == ConnectionState.Closed)
connection.Open();
da.Fill(ds, "ds");
cmd.Parameters.Clear();
}
catch
{ }
finally
{ }
return ds;
}
private static void PrepareCommand(OleDbCommand cmd, OleDbConnection conn, OleDbTransaction trans, string cmdText, OleDbParameter[] cmdParms)
{
cmd.CommandText = cmdText;
cmd.Connection = conn;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = CommandType.Text;//cmdType;
if (cmdParms != null)
{
foreach (OleDbParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
}
}

OleDbHelper的更多相关文章

  1. C#---OleDbHelper

    /// <summary> /// OleDbServer数据访问帮助类 /// </summary> public sealed class OleDbHelper { pu ...

  2. [aspx]控件及代码小例

    1. 原生 asp 方式遍历 DataTable  2. aspx 的控件 Repeater 后台绑定 <%-- DataTable dt = OleDbHelper.GetTable(&quo ...

  3. C#处理Excel

    C#处理Excel C#处理Excel 前言 OleDb 具体操作 NPOI 具体操作 Excel C# NPOI OleDb 前言 最近需要对Excel进行加密解密操作,本身是一个简单的事情,通过 ...

  4. C# 操作数据库就的那点代码

    操作数据库的那点代码,别在费劲每个数据库都写一遍SQLHelper,SQLiteHelper,OleDbHelper,了,这里都有了. 接口不发了,自己抽取定义就行了. public abstract ...

  5. c# 轻量级 ORM 框架 之 DBHelper 实现 (三)

    周末了比较清闲,把自己的orm框架整理了下,开源了. 已经做出来的东西通常感觉有些简单,一些新手或许听到"框架"一类的词觉得有些"高深",简单来说orm就是把a ...

  6. wpf:DataGrid使用

    xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" ...

  7. SqlHelper 帮助文档及详解--项目初步搭建

    微软SqlHelper类中文注释和使用方法 相关链接: http://blog.csdn.net/itmaxin/article/details/7609566 SqlHelper.cs是N年前微软出 ...

  8. asp.net读取Access数据库。

    注:数据库(表名 job  id 工作id ,job工作字段) 数据库放在app_data文件中.名称为database.mdb 如果用codesmith生成,选择的数据库连接类型如下图: 项目结构图 ...

  9. Asp.net 获取图片列表并打包下载

    先引用:ICSharpCode.SharpZipLib.dll 后台代码: using System.IO; using ICSharpCode.SharpZipLib.Zip; using ICSh ...

随机推荐

  1. apache安装扩展模块

    apache 安装扩展模块 1,首先要确认你是否加载了mod_so模块,这个就是你在编译前参数配置的时候添加-enable-so(启用DSO).如果你没有这模块的话,是无法安装扩展模块的. /usr/ ...

  2. 《JavaScript 闯关记》之对象

    对象是 JavaScript 的数据类型.它将很多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值,因此我们可以把它看成是从字符串到值的映射.对象是动态的,可以随时新增和删除自有属性.对象除了 ...

  3. global中拦截404错误的实现方法

    1. void Application_Error(object sender, EventArgs e) { if(Context != null) { HttpContext ctx = Http ...

  4. UMl概述(转)

    1. UML的组成 UML由视图(View).图(Diagram).模型元素(Model Element)和通用机制(General Mechanism)等几个部分组成. a) 视图(View): 是 ...

  5. Linux下重要日志文件及查看方式

    http://os.51cto.com/art/201108/282184_all.htm   1.Linux下重要日志文件介绍 /var/log/boot.log 该文件记录了系统在引导过程中发生的 ...

  6. 背包问题递归java

    public boolean PackageProblem(int[] arr,int start,int targetLeft,int target) { if(arr.length==0) { S ...

  7. UILabel + 导入字体

    UILabel * label = [[UILabel alloc]initWithFrame:CGRectMake(10, 100, 300, 100)]; 1.设置文字颜色 label.textC ...

  8. (原创) C# List 找 Max 的 Index

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. thinkPHP入门 一

    简介 ThinkPHP是一个快速.简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开 ...

  10. 异常处理 - PHP手册笔记

    PHP代码中所产生的异常可被throw语句抛出,并被catch语句捕获.需要进行异常处理的代码都必须放入try代码块内,每一个try至少要有一个与之对应的catch.当一个异常被抛出时,所在代码块后面 ...