Oracle 应用于.NET平台

时间:2023-03-09 18:38:26
Oracle 应用于.NET平台

1. 回顾ADO.NET

ADO.NET是一组用于和数据源进行交互的面向对象类库集,它存在于.Net Framework中。通常情况下,数据源可以是各种类型的数据库,利用ADO.NET可以访问目前几乎所有的主流数据库,如Oracle、SQL Server、DB2、Access等,但数据源同样也可能输文本文件、Excel或者XML文件,因此,ADO.NET可以访问的数据源是很多的。ADO.NET由两部分组成:.NET数据提供程序和数据集。

.Net数据提供程序

ADO.NET提供了与常用的各种数据源进行交互的一些公共方法,但是对于不同的数据源由于它们各采用的协议是不一样的,所以会采用不同的类库,这些类库称为数据提供程序。主要的数据提供程序

Oracle 应用于.NET平台

ADO.NET主要负责与数据库服务器建立连接通道,并基于此连接通道实现从数据库中检索数据,并将内存中的数据回送到数据库以提交更新或将在内存中拼写好的SQL语句提交到数据库服务器并执行以实现某种数据操作等等。

数据集

数据集可以被看作是一个存储在内存中的离线式的数据库,它很像我们最终存储数据的物理数据库,它将很多物理数据库的机制搬到了内存中。

2. 使用ADO.NET连接Oracle

使用ADO.NET数据访问技术连接Oracle数据库和连接Sql Server数据库的步骤基本相同:

1. 使用Connection对象建立数据库连接。

2. 使用Command对象执行数据库操作。

3. 采用连线或者断线的方式进行数据的存取。

4. 使用Connection对象的Close方法关闭数据库连接。

连接Sql Server数据库和Oracle数据库所使用的数据提供程序是不一样的,连接Sql Server数据库使用的是SqlServer.NET,包括SqlConnection、SqlCommand等数据访问类。而连接Oracle数据库则使用的是Oracle.NET,包括OracleConnection、OracleCommand等数据访问类,包含在System.Data.OracleClient命名空间下 。

在Oracle数据库中在System用户下,创建UserInfo表,并插入一定数据,使用ADO.NET数据访问技术将UserInfo表中的数据检索出来,并显示在ASP.NET页面中。

Oracle 应用于.NET平台

1. 使用OracleConnection对象建立与Oracle之间的连接。

 //连接字符串
string connectionString = "Data Source = MYORCL;UserID = System;Password = accp;Unicode = True";
//创建Oracle连接对象
OracleConnection con = new OracleConnection(connectionString);
//打开连接
con.open();

2.创建命令行对象,准备执行检索数据库操作

//建立Sql查询语句
string sql = "select * from UserInfo";
//创建Oracle命令行对象
OracleCommand cmd = new OracleCommand(sql,con);
//执行命令行对象
OracleDataReader ord = cmd.ExcuteReader(CommandBehavior.CloseConnection);

3.创建实体类,并遍历结果集,将数据存放在集合中存储

//实体类
public class UserInfo
{
int userID;
public int UserID
{
get{return userID;}
set{userID = value;}
}
string userName;
public string UserName
{
get{return userName;}
set{userName = value;}
}
string userAge;
public string UserAge
{
get{return userAge;}
set{userAge = value;}
}
}
//遍历结果集
IList<UserInfo> users = new List<UserInfo>();
while(ord.read())
{
UserInfo user = new UserInfo();
user.UserID = Convert.ToString(ord["UserID"]);
user.UserName = Convert.ToString(ord["UserName "]);
user.UserAge = Convert.ToString(ord["UserAge "]); users.Add(user);
}

4.将集合中的数据绑定到GridView控件上显示出来

GridView.DataSource = users;
GridView.DataBind();