热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

asp.net(C#)Access数据操作类

asp.net(C#)Access数据操作类实现代码,有需要这方面的朋友可以熟悉下。
代码如下:

using System;
using System.Configuration;
using System.Data;
using System.Data.OleDb;
using System.Xml;
using System.Collections;
namespace Website.Command
{
///
/// WSplus 的摘要说明。
///

public class AccessClass : System.Web.UI.Page
{
private static OleDbConnection scOnn= null;
public static string _returnValue = "0";
public WSplus()
{
//
// TODO: 在此处添加构造函数逻辑
//
scOnn= new OleDbConnection("Provider="Microsoft.Jet.OLEDB.4.0;Data" Source=" + Server.MapPath("/..db.mdb") + ";");
}
///
///开启数据
///

private static void connOpen()
{
if (sconn.State="=ConnectionState.Closed)"
try
{
sconn.Open();
}
catch (Exception ex)
{
throw new Exception("数据库初始化错误!!!"+ex.Message);
}
}
///
/// 关闭数据库
///

public void connClose()
{
if (sconn.State ="=" ConnectionState.Open)
try
{
sconn.Close();
}
catch (Exception ex)
{
throw new Exception("OleDb Close Error!"+ex.Message);
}
}
///
/// 存储过程型CMD初始化!
///

///
///
///
private static void ConfigCMD(Hashtable ht,OleDbCommand sCmd,string sqls)
{
if (sCmd ="=" null) throw new ArgumentException("sCmd未初始化");
if (ht != null && ht.Count != 0)
{
IDictionaryEnumerator items = ht.GetEnumerator();
while (items.MoveNext())
sCmd.Parameters.Add(MakeParam(items.Key.ToString(),items.Value.ToString()));
}
sCmd.COnnection= sconn;
sCmd.CommandText = sqls;
}
private static void ConfigCMD(ArrayList alist,OleDbCommand sCmd,string sqls)
{
if (sCmd ="=" null) throw new ArgumentException("sCmd未初始化");
if (alist != null && alist.Count != 0)
{
foreach (object items in alist)
{
Command.Model.typeFiles cmt = (Command.Model.typeFiles)items;
sCmd.Parameters.Add(MakeParam(cmt.Fkey.ToString(),cmt.Fvalue1.ToString(),cmt.Fvalue2.ToString()));
}
}
sCmd.COnnection= sconn;
sCmd.CommandText = sqls;
}
private static OleDbParameter MakeParam(string key,string value)
{
return new OleDbParameter(key,value);
}
private static OleDbParameter MakeParam(string key,string F1,string F2)
{
OleDbParameter par = null;
if (F2.ToUpper() ="=" "STRING")
{
par = new OleDbParameter(key,OleDbType.VarChar);
}
else if (F2.ToUpper() ="=" "INTEGER")
{
par = new OleDbParameter(key,OleDbType.Integer);
}
else if (F2.ToUpper() ="=" "LSTRING")
{
par = new OleDbParameter(key,OleDbType.LongVarChar);
}

// try
// {
par.Value = F1;
// }
// catch(Exception e)
// {
// throw new Exception(e.Message + " " + key + " " + F1 + " " + F2);
// }
return par;
}
public void ExecConfig(Hashtable ht,string sqls)
{
OleDbCommand cmd="new OleDbCommand();
connOpen();
ConfigCMD(ht,cmd,sqls);
ExecuteNonQuery(cmd);
}
public void ExecConfig(ArrayList alist,string sqls)
{
OleDbCommand cmd="new OleDbCommand();
connOpen();
ConfigCMD(alist,cmd,sqls);
ExecuteNonQuery(cmd);
}
///
/// 数据操作
///

///
private static void ExecuteNonQuery(OleDbCommand cmd)
{
Command.AccessClass cw = new AccessClass();

try
{
_returnValue = cmd.ExecuteNonQuery().ToString();
}
catch (Exception e) {throw new Exception("Run Exec Error!"+e.Message);}
finally
{
cmd.Parameters.Clear();

cw.connClose();
}
}
///
/// sql语句型datatable
///

///
///
public DataTable ReturnDatatableBySql(Hashtable ht,string sqls)
{
DataTable dt="new DataTable();
OleDbCommand cmd="new OleDbCommand();
ConfigCMD(ht,cmd,sqls);
OleDbDataAdapter sda="new OleDbDataAdapter(cmd);
sda.Fill(dt);
cmd.Parameters.Clear();

return dt;
}
public OleDbDataReader getReader(Hashtable ht,string sqls)
{
connOpen();
OleDbCommand cmd="new OleDbCommand();
ConfigCMD(ht,cmd,sqls);
OleDbDataReader reader = cmd.ExecuteReader();
return reader;

//reader.Close();
//cmd.Parameters.Clear();
//connClose();
}
public OleDbDataReader getReader(ArrayList alist,string sqls)
{
connOpen();
OleDbCommand cmd="new OleDbCommand();
ConfigCMD(alist,cmd,sqls);
OleDbDataReader reader = cmd.ExecuteReader();
return reader;

//reader.Close();
//cmd.Parameters.Clear();
//connClose();
}

public string ReturnValue
{
get
{
return _returnValue;
}
set
{
_returnValue = value;
}
}
}
}

推荐阅读
  • 本文探讨了在SharePoint环境中使用BDC(Business Data Catalog)时遇到的问题及其解决策略,包括XML文件导入SSP后的不可见性问题以及与远程SQL Server 2005连接的难题。 ... [详细]
  • MyBatis入门指南:环境搭建与基础配置详解
    本文详细介绍了MyBatis的基础配置流程,包括在Maven项目中添加MyBatis依赖、IDEA中配置数据库连接、导入SQL脚本以及编写mybatis-config.xml配置文件等关键步骤。 ... [详细]
  • 本文详细介绍了在MyBatis框架中如何通过#和$两种方式来传递SQL查询参数。使用#方式可以提高执行效率,而使用$则有助于在复杂SQL语句中更好地查看日志。此外,文章还探讨了不同场景下的参数传递方法,包括实体对象、基本数据类型以及混合参数的使用。 ... [详细]
  • StoredProcedure “存储过程名” 的TextHeader 中存在语法错误
    修改存储过程的时候出现StoredProcedure“存储过程名”的TextHeader中存在语法错误出现这样的问题的解决方法(本人修改已成功)在创建存 ... [详细]
  • 本文总结了在使用 Spring MVC 过程中常见的错误及其解决方案,包括 Servlet 配置错误等典型问题。 ... [详细]
  • 本文介绍了基于Java的在线办公工作流系统的毕业设计方案,涵盖了MyBatis框架的应用、源代码分析、调试与部署流程、数据库设计以及相关论文撰写指导。 ... [详细]
  • System Center Operations Manager 2007(简称SCOM 2007)作为MOM 2005的升级版,不仅整合了监控与管理功能,还显著简化了操作流程,提供了更加全面和精准的服务管理。 ... [详细]
  • 本文介绍如何通过创建数据库触发器来限制Oracle数据库中特定用户的登录IP地址,以增强系统的安全性。示例代码展示了如何阻止非授权IP地址的登录尝试。 ... [详细]
  • 本文提供了一个SQL脚本,用于在Microsoft SQL Server中创建一个数据字典视图,该视图详细列出了表名、表描述、字段名称、字段描述、字段类型、字段大小、字段精度、是否可为空、默认值以及是否为标识或主键等信息。 ... [详细]
  • 本文基于最新版SQLite 3.33.0(发布于2020年8月20日),详细介绍如何使用ORDER BY语句进行数据排序,包括单列和多列排序的方法。 ... [详细]
  • 本文探讨了Android系统中联系人数据库的设计,特别是AbstractContactsProvider类的作用与实现。文章提供了对源代码的详细分析,并解释了该类如何支持跨数据库操作及事务处理。源代码可从官方Android网站下载。 ... [详细]
  • 本文详细介绍了PHP中的几种超全局变量,包括$GLOBAL、$_SERVER、$_POST、$_GET等,并探讨了AJAX的工作原理及其优缺点。通过具体示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 本文通过一系列实验,探讨了Oracle 11g数据库中密码错误验证延迟特性对用户登录速度的影响。实验旨在验证当某个用户因输入错误密码而触发延迟时,是否会影响其他用户的正常登录速度。 ... [详细]
  • SQL查询与事务管理:深入解析
    本文详细介绍了SQL查询的基本结构和高级特性,包括选择、分组查询以及权限控制等内容,并探讨了事务管理中的并发控制策略,旨在为数据库管理员和开发人员提供实用指导。 ... [详细]
  • PHP 图形函数中实现汉字显示的方法
    本文详细介绍了如何在 PHP 的图形函数中正确显示汉字,包括具体的步骤和注意事项,适合初学者和有一定基础的开发者阅读。 ... [详细]
author-avatar
yu诚_530
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有