WEB开发网
开发学院数据库Oracle 在Oracle数据库上构建.NET应用程序 阅读

在Oracle数据库上构建.NET应用程序

 2006-11-18 12:01:45 来源:WEB开发网   
核心提示: 图 7: 针对 ORA-12545 错误的对用户友好的消息Finally 代码将始终执行,而无论错误是否发生,在Oracle数据库上构建.NET应用程序(8), 通过在 Finally 代码块中加入连接对象的 Close 或 Dispose 方法调用,在执行了 Try-Catch-Fina

图 7: 针对 ORA-12545 错误的对用户友好的消息

Finally 代码将始终执行,而无论错误是否发生。 通过在 Finally 代码块中加入连接对象的 Close 或 Dispose 方法调用,在执行了 Try-Catch-Finally 代码段之后,数据库连接将始终关闭。 试图关闭没有打开的数据库连接不会导致错误。 例如,如果数据库不可用,数据库连接没有打开,那么 Finally 代码块将试图关闭不存在的连接。 执行多余的 Close 或 Dispose 是无效的。 只需将一条 Close 或 Dispose 方法放到 Finally 代码块中,将保证关闭连接。

利用 DataReader 检索多个值

到目前为止,我们的示例仅说明了如何检索单个值。 DataReader 可以检索多列和多行的值。 首先进行多行、单列的查询:select deptno, dname, loc from dept where deptno = 10  要获取列的值,可以使用以零为基数的序号或列名。 序号与查询中的顺序相关。 因而,可以在 VB.NET 中通过使用 dr.Item(2) 或 dr.Item("loc") 来查询 loc 列的值。

下面是将 dname 和来自上一查询的 loc 列串连起来的代码段:Label1.Text = "The " + dr.Item(1) + " department is in " + dr.Item("loc") ' VB.NET
Label1.Text = "The " + dr.GetString(1) + " department is in " + dr.GetString(2); // C#
  现在我们进行返回多行的查询:select deptno, dname, loc from dept  要处理从 DataReader 中返回的多行,需要某种类型的循环结构。 此外,需要一个可以显示多行的控件。 DataReader 是一个仅正向的只读游标,因此不能将其与可更新或完全可滚动的控件(如 Windows Forms DataGrid 控件)捆绑在一起。 DataReader 与 ListBox 控件兼容,如以下代码段所示:While dr.Read() ' VB.NET
  ListBox1.Items.Add("The " + dr.Item(1) + " department is in " + dr.Item("loc")) End While
while (dr.Read()) // C#
{
 listBox1.Items.Add("The " + dr.GetString(1) + " department is in " + dr.GetString(2);
}
  上机操作 3(利用 DataReader 检索多列和多行)重点介绍了这些概念中的一部分。

总结

本文向您介绍了使用 VS.NET 编程语言访问 Oracle 数据库的过程。 您现在应该能够连接数据库并检索多列和多行。

上一页  3 4 5 6 7 8 

Tags:Oracle 数据库 构建

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接