今天整理文档时,发现有个连接oracle数据库的demo。于是花了点时间将连接oracle数据库的代码封装成了一个类,测试了下,可以用。代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//添加命名空间
using System.Data;
using System.Data.OracleClient;
namespace ODBCTest
{
class ConnDB
{
OracleConnection conn = null; // 申明连接对象
// 初始化
public ConnDB()
{
if (conn == null)
{
string strConn = "data source = orcl ; user = scott ; password = tiger ;"; // 配置连接数据库的URL
conn = new OracleConnection(strConn);
if(conn.State==ConnectionState.Closed)
{
conn.Open();
}
}
}
// 查询数据
public DataSet query(string sql)
{
DataSet ds = new DataSet(); // 将数据存在内存中(数据集)
OracleDataAdapter da = new OracleDataAdapter(sql,conn); // 得到操作数据库的对象
da.Fill(ds); //填充数据
CloseDB();
return ds;
}
// 更新数据库
public int update(string sql)
{
OracleCommand cmd = new OracleCommand(sql, conn); // 得到执行sql语句或存储过程的对象
cmd.CommandType = CommandType.Text; // 指定执行sql文本或是存储过程
int row = cmd.ExecuteNonQuery(); // 执行 SQL INSERT、DELETE、UPDATE 和 SET 语句等命令。
CloseDB();
return row;
}
// 关闭数据库
public void CloseDB()
{
if(conn.State==ConnectionState.Open)
{
conn.Dispose(); // 显示的释放资源
conn.Close();
}
}
}
}