[ASP.net(C#)]数据库操作类(可用于任意数据库)

原创 2004年09月15日 15:28:00

前些日子无聊写的一个类,针对于不同的数据库来写的。
现在还是不能说是完整的,因为还有很多功能都没有写完全。同样,在下面的代码当中也只可用于SQL和OLE两种,对于Oracle、MySql等还没有支持。当然,这类的扩展功能对其它数据库的支持只要在文件中加入那么一句就可以用了!^o^
====================================================

这里我用一个例子做源码说明:
Web.config里加入:
======================
---------------------------------------------------------


<appSettings>
  <add key="sqlConnection" value="SERVER=(local);USER ID=sa;PWD=testPass;DATABASE=testdatabase;CONNECT TIMEOUT=5;" />
</appSettings>

--------------------------------------------------------

下面是DataBaseConnect.cs类文件:
=======================
---------------------------------------------------------------

using System;
using System.Data;
using System.Configuration;

namespace Test
{
///
/// DataBaseConnect 的摘要描述。
///
public class DataBaseConnect
{

public string dataBaseType;
public string dataBaseName;

protected IDbConnection dataConnection;

public DataBaseConnect()
{
//
// TODO: 在這裡加入建構函式的程式碼
//
}

public IDbConnection DbConnection()
{
//判斷數據庫類型以及打開在web.config裡key所指定的數據庫。返回IDbConnection值。
switch (dataBaseType)
{
case "SQL":
dataConnection = new System.Data.SqlClient.SqlConnection(ConfigurationSettings.AppSettings[dataBaseName]);
break;
case "OLE":
dataConnection = new System.Data.OleDb.OleDbConnection(ConfigurationSettings.AppSettings[dataBaseName]);
break;
}
return dataConnection;
}
}
}

================================================

再建一個類文件:DataBaseTool.cs
==========================
------------------------------------------------------------------------

using System;
using System.Data;

namespace Test
{
///
/// DataBaseTool 的摘要描述。
///
public class DataBaseTool
{
private IDbConnection dbConnection;
private IDbCommand cmd;
private IDataReader dataReader;
private DataBaseConnect dbConnect = new DataBaseConnect();

public DataBaseTool()
{
//
// TODO: 在這裡加入建構函式的程式碼
//
}

public void Open(string dataBaseType,string dataBaseName)
{
//成員函數,參數dataBaseType為數據庫類型,參數dataBaseName為在web.config裡的key名稱
dbConnect.dataBaseType = dataBaseType.ToUpper();
dbConnect.dataBaseName = dataBaseName;

dbConnection = dbConnect.DbConnection();
dbConnection.Open();
cmd = dbConnection.CreateCommand();
}

public void Close()
{
//鏈接關閉斷開。
cmd.Dispose();
dbConnection.Close();
dbConnection.Dispose();
}

public IDataReader GetData(string sqlString)
{
//數據查詢。返回一個DataReader值。
cmd.CommandText = sqlString;
dataReader = cmd.ExecuteReader();

return dataReader;
}

public int InsertData(string sqlString)
{
//數據插入。返回影響行數。
cmd.CommandText = sqlString;
return cmd.ExecuteNonQuery();
}

public int DeleteData(string sqlString)
{
//數據刪除。返回影響行數。
cmd.CommandText = sqlString;
return cmd.ExecuteNonQuery();
}

public int UpdateData(string sqlString)
{
//數據更新。返回影響行數。
cmd.CommandText = sqlString;
return cmd.ExecuteNonQuery();
}
}
}
==================================================

类文件建完成后便可用了!^o^
下面是简单的用法:

DataBaseTool dbTool = new DataBaseTool();   //实例化对像
dbTool.Open("SQL","sqlConnection");   //打开数据库
string sqlString = "SELECT * FROM administrator";   //定义SQL语句
DataGrid.DataSource = dbTool.GetData(sqlString);   //数据梆定到DataGrid中。
dgList.DataBind();
dbTool.Close();  //数据库关闭

====================================

在此类中还可以扩展很多东西,比如现在此类调用后只返回一个DataReader对像,还有很多没用到,比如DataTable等。

C#数据库操作类(完整通用)

using System; using System.Collections.Generic; using System.Text; using System.Data.SqlClient; ...
  • angela8804100029
  • angela8804100029
  • 2013年04月14日 19:09
  • 1776

.NET通用的数据库操作类(支持多种数据库)

通用的数据库操作类(支持多种数据库)       我们在软件开发过程中,数据库是一个永久不变的话题,但是根据软件架构与客户要求的不同我们会选择不同的数据库,在C#中不同数据库操作编写代码不尽相同...
  • qq798833488
  • qq798833488
  • 2016年05月13日 11:02
  • 4402

ASP.NET MongoDB数据库操作类

1、Web.config文件中配置数据库连接信息,如下代码:                    -->                                -->...
  • taomanman
  • taomanman
  • 2017年08月09日 10:56
  • 504

SQL Server数据库操作类(C#)

博文介绍的SQL Server数据库操作类是C#语言的,可实现对SQL Server数据库的增删改查询等操作。并且该操作类可实现对图片的存储,博文的最后附上如何将Image图片转换为byte[]数组类...
  • softimite_zifeng
  • softimite_zifeng
  • 2016年11月06日 11:18
  • 812

c# 操作ACCESS数据库

c# 简单操作ACCESS
  • nanxizhu
  • nanxizhu
  • 2014年11月06日 20:10
  • 2226

C#访问Access数据库的数据库操作类

最近做了一些关于Access数据库的应用开发,其中涉及了对Access数据库的访问,现在将我们自己用到的几个基类贴出来给 大家看看,由于涉及功能并不多,其中有些也是借鉴了他人的代码,功能也比较简单,...
  • weizhiai12
  • weizhiai12
  • 2015年04月15日 16:14
  • 697

C# 对数据库操作的帮助类SQLHelper.cs

在操作数据库的时候,制作一个SqlHelper类封装常用的方法,减少重复代码. 在配置文件App.config中加入数据库的连接信息例如 引用: ...
  • nepture911122
  • nepture911122
  • 2017年02月16日 10:26
  • 1700

ASP.NET操作Oracle数据库方法

ASP.NET连接oracle数据库 首先我们在
  • lizhangyong1989
  • lizhangyong1989
  • 2014年06月01日 17:20
  • 2977

C# .NET万能数据库访问封装类(ACCESS、SQLServer、Oracle)

在app.config文件中写上数据库中连接信息:   appSettings>       add key="connectionstring" value="Data Source=LocalHo...
  • u011269801
  • u011269801
  • 2016年11月07日 09:03
  • 679

ASP.Net操作Access数据库总结

1、数据库的连接 引入命名空间 using System.Data; using System.Data.OleDb; 连接代码:    string strConnection = "Provide...
  • lc_2014c
  • lc_2014c
  • 2015年07月08日 16:17
  • 1010
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[ASP.net(C#)]数据库操作类(可用于任意数据库)
举报原因:
原因补充:

(最多只允许输入30个字)