OleDbHelper
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的更多相关文章
- C#---OleDbHelper
/// <summary> /// OleDbServer数据访问帮助类 /// </summary> public sealed class OleDbHelper { pu ...
- [aspx]控件及代码小例
1. 原生 asp 方式遍历 DataTable 2. aspx 的控件 Repeater 后台绑定 <%-- DataTable dt = OleDbHelper.GetTable(&quo ...
- C#处理Excel
C#处理Excel C#处理Excel 前言 OleDb 具体操作 NPOI 具体操作 Excel C# NPOI OleDb 前言 最近需要对Excel进行加密解密操作,本身是一个简单的事情,通过 ...
- C# 操作数据库就的那点代码
操作数据库的那点代码,别在费劲每个数据库都写一遍SQLHelper,SQLiteHelper,OleDbHelper,了,这里都有了. 接口不发了,自己抽取定义就行了. public abstract ...
- c# 轻量级 ORM 框架 之 DBHelper 实现 (三)
周末了比较清闲,把自己的orm框架整理了下,开源了. 已经做出来的东西通常感觉有些简单,一些新手或许听到"框架"一类的词觉得有些"高深",简单来说orm就是把a ...
- wpf:DataGrid使用
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" ...
- SqlHelper 帮助文档及详解--项目初步搭建
微软SqlHelper类中文注释和使用方法 相关链接: http://blog.csdn.net/itmaxin/article/details/7609566 SqlHelper.cs是N年前微软出 ...
- asp.net读取Access数据库。
注:数据库(表名 job id 工作id ,job工作字段) 数据库放在app_data文件中.名称为database.mdb 如果用codesmith生成,选择的数据库连接类型如下图: 项目结构图 ...
- Asp.net 获取图片列表并打包下载
先引用:ICSharpCode.SharpZipLib.dll 后台代码: using System.IO; using ICSharpCode.SharpZipLib.Zip; using ICSh ...
随机推荐
- DevExpress中SearchLookUpEdit用法总结
在前一个项目中用到了DevExpress,需要搜索某一个字段,来拉取出对应的相关信息,比来比去,发现SearchLookUpEdit的用户体验更好,但自己是个不折不扣的C#和DevExpress的初学 ...
- Json.Net介绍及实例
本系列教程假设读者已经对Json有一定的了解,关于Json在这里不多说.本系列教程希望能对读者开发涉及到Json的.Net项目有一定的帮助.本系列教程是根据官方文档资料和自己项目应用汇总而成.如果觉得 ...
- CAShapeLayer + UIBezierPath
UIBezierPath: UIBezierPath是在 UIKit 中的一个类,继承于NSObject,可以创建基于矢量的路径.使用此类可以定义常见的圆形.多边形等形状 .我们使用直线.弧(arc) ...
- ckplayer 项目实际应用代码整理,支持标清,高清,超清切换!
ckplayer是个免费,小巧,功能强大的视频播放器,前段时间有个项目需要做个收费视频播放的功能,于是就用了ck,目前项目已经弄完,完美支持pc和手机端的播放,重要的是可以支持清晰度切换,最后加了个是 ...
- Aandroid Error之 新导入工程报Unable to resolve target 'android-18'和R cannot be resolved
有段时间没有写安卓了,今天导入以前的项目,结果看到控制台打印出了这样一句:Unable to resolve target 'android-18', 解决方法: 项目->属性->Andr ...
- [Effective Modern C++] Item 5. Prefer auto to explicit type declarations - 相对显式类型声明,更倾向使用auto
条款5 相对显式类型声明,更倾向使用auto 基础知识 auto能大大方便变量的定义,可以表示仅由编译器知道的类型. template<typename It> void dwim(It ...
- web.xml中<load-on-start>n</load-on-satrt>作用
如下面一段配置,我们再熟悉不过了: 我们注意到它里面包含了这段配置:<load-on-startup>1</load-on-startup>,那么这个配置有什么作用呢? 作用如 ...
- 'adb' 不是内部或外部命令,也不是可运行的程序
启动adb shell的时候,出现如下问题: 'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件. 在确保自己的SDK安装正确的时候,就很好办了,找到SDK安装目录\platform-to ...
- MEMS微加工技术
MEMS的微加工有两种方法,一种是多层平面加工技术,还有一种是基于SOI的体加工技术. (一)多层平面加工技术 这种方法加工出来的结构有三层:作为主体的多晶硅层.作为暂时填充物的氧化物牺牲层以及多晶硅 ...
- HBase 1、HBase介绍和工作原理
HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利用了Google文件 ...