c#_访问oracle通用代码

上传人:第*** 文档编号:34433061 上传时间:2018-02-24 格式:DOC 页数:19 大小:125KB
返回 下载 相关 举报
c#_访问oracle通用代码_第1页
第1页 / 共19页
c#_访问oracle通用代码_第2页
第2页 / 共19页
c#_访问oracle通用代码_第3页
第3页 / 共19页
c#_访问oracle通用代码_第4页
第4页 / 共19页
c#_访问oracle通用代码_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《c#_访问oracle通用代码》由会员分享,可在线阅读,更多相关《c#_访问oracle通用代码(19页珍藏版)》请在金锄头文库上搜索。

1、using System;using System.Data;using System.Data.OracleClient;using System.Web.UI.WebControls;namespace SiFenManager.Util/ / 数据库通用操作类/ public class Databaseprotected OracleConnection con;/连接对象public Database()con=new OracleConnection(DafangFramework.AppConfig.DataBaseConnectionString);public Databas

2、e(string constr)con=new OracleConnection(constr);#region 打开数据库连接/ / 打开数据库连接/ private void Open()/打开数据库连接if(con.State=ConnectionState.Closed)try/打开数据库连接con.Open();catch(Exception e)throw e;#endregion#region 关闭数据库连接/ / 关闭数据库连接/ private void Close()/判断连接的状态是否已经打开if(con.State=ConnectionState.Open)con.Cl

3、ose();#endregion#region 执行查询语句,返回 OracleDataReader ( 注意:调用该方法后,一定要对 OracleDataReader进行 Close )/ / 执行查询语句,返回 OracleDataReader ( 注意:调用该方法后,一定要对 OracleDataReader进行 Close )/ / 查询语句/ OracleDataReader public OracleDataReader ExecuteReader(string sql)OracleDataReader myReader;Open();OracleCommand cmd = new

4、 OracleCommand(sql, con);myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);return myReader;#endregion#region 执行带参数的 SQL语句 / / 执行 SQL语句,返回影响的记录数/ / SQL语句/ 影响的记录数 public int ExecuteSql(string sql, params OracleParameter cmdParms)OracleCommand cmd = new OracleCommand();tryPrepareCommand(cmd

5、, con, null, sql, cmdParms);int rows = cmd.ExecuteNonQuery();cmd.Parameters.Clear();return rows;catch (System.Data.OracleClient.OracleException e)throw e;#endregion#region 执行带参数的 SQL语句 / / 执行不带参数的 SQL语句/ / SQL语句 public void ExecuteSql(string sql)OracleCommand cmd = new OracleCommand(sql,con);tryOpen

6、();cmd.ExecuteNonQuery();Close();catch (System.Data.OracleClient.OracleException e)Close();throw e;#endregion#region 执行 SQL语句,返回数据到 DataSet中/ / 执行 SQL语句,返回数据到 DataSet中/ / sql语句/ 返回 DataSetpublic DataSet GetDataSet(string sql)DataSet ds=new DataSet();tryOpen();/打开数据连接OracleDataAdapter adapter=new Ora

7、cleDataAdapter(sql,con);adapter.Fill(ds);catch/(Exception ex)finallyClose();/关闭数据库连接return ds;#endregion#region 执行 SQL语句,返回数据到自定义 DataSet中/ / 执行 SQL语句,返回数据到 DataSet中/ / sql语句/ 自定义返回的 DataSet表名/ 返回 DataSetpublic DataSet GetDataSet(string sql,string DataSetName)DataSet ds=new DataSet();Open();/打开数据连接O

8、racleDataAdapter adapter=new OracleDataAdapter(sql,con);adapter.Fill(ds,DataSetName);Close();/关闭数据库连接return ds;#endregion#region 执行 Sql语句,返回带分页功能的自定义 dataset/ / 执行 Sql语句,返回带分页功能的自定义 dataset/ / Sql语句/ 每页显示记录数/ 当前页/ 返回 dataset表名/ 返回 DataSetpublic DataSet GetDataSet(string sql,int PageSize,int CurrPage

9、Index,string DataSetName)DataSet ds=new DataSet();Open();/打开数据连接OracleDataAdapter adapter=new OracleDataAdapter(sql,con);adapter.Fill(ds,PageSize * (CurrPageIndex - 1), PageSize,DataSetName);Close();/关闭数据库连接return ds;#endregion#region 执行 SQL语句,返回记录总数/ / 执行 SQL语句,返回记录总数/ / sql语句/ 返回记录总条数public int Ge

10、tRecordCount(string sql)int recordCount = 0;Open();/打开数据连接OracleCommand command = new OracleCommand(sql,con);OracleDataReader dataReader = command.ExecuteReader();while(dataReader.Read()recordCount+;dataReader.Close();Close();/关闭数据库连接return recordCount;#endregion#region 统计某表记录总数 / / 统计某表记录总数/ / 主键/索

11、引键/ 数据库.用户名.表名/ 查询条件/ 返回记录总数 public int GetRecordCount(string keyField, string tableName, string condition)int RecordCount = 0;string sql = select count( + keyField + ) as count from + tableName + + condition;DataSet ds = GetDataSet(sql);if (ds.Tables0.Rows.Count 0)RecordCount =Convert.ToInt32(ds.Ta

12、bles0.Rows00);ds.Clear();ds.Dispose();return RecordCount;/ / 统计某表记录总数/ / 可重复的字段/ 数据库.用户名.表名/ 查询条件/ 字段是否主键/ 返回记录总数 public int GetRecordCount(string Field, string tableName, string condition, bool flag)int RecordCount = 0;if (flag)RecordCount = GetRecordCount(Field, tableName, condition);elsestring sq

13、l = select count(distinct( + Field + ) as count from + tableName + + condition;DataSet ds = GetDataSet(sql);if (ds.Tables0.Rows.Count 0)RecordCount = Convert.ToInt32(ds.Tables0.Rows00);ds.Clear();ds.Dispose();return RecordCount;#endregion#region 统计某表分页总数 / / 统计某表分页总数/ / 主键/索引键/ 表名/ 查询条件/ 页宽/ 记录总数/ 返

14、回分页总数 public int GetPageCount(string keyField, string tableName, string condition, int pageSize, int RecordCount)int PageCount = 0;PageCount = (RecordCount % pageSize) 0 ? (RecordCount / pageSize) + 1 : RecordCount / pageSize;if (PageCount / 统计某表分页总数/ / 主键/索引键/ 表名/ 查询条件/ 页宽/ 返回页面总数 public int GetPag

15、eCount(string keyField, string tableName, string condition, int pageSize, ref int RecordCount)RecordCount = GetRecordCount(keyField, tableName, condition);return GetPageCount(keyField, tableName, condition, pageSize, RecordCount);/ / 统计某表分页总数/ / 可重复的字段/ 表名/ 查询条件/ 页宽/ 是否主键/ 返回页页总数 public int GetPageCount(string Field, string tableName, string condition, ref int RecordCount, int pageSize, bool flag)RecordCount = GetRecordCount(Field,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号