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

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

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

图 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 控件兼容,如以下代码段所示:

上一页  4 5 6 7 8 9 10  下一页

Tags:Oracle 数据库 构建

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