在 .NET中使用Oracle数据库事务

oracle|数据|数据库

    在本文中,您将了解到如何在 Visual Basic .NET (VB.NET) 和 Visual C# .NET (C#) 中使用数据库事务。具体来讲,您将系统学习数据库事务、在 .NET 程序中使用 OracleTransaction 对象以及如何设置事务保存点。本文中引用的所有脚本和文件都在这里提供。本文假定您大体上熟悉 C# 和 VB.NET 编程。
  所需软件

  如果您要跟随我们逐步完成本文中给出的示例,那么您需要安装以下软件:

  Windows NT 4.0、Windows 2000、Windows XP Professional 或 Windows Server 2003

  能够访问一个已安装的 Oracle 数据库(Oracle8i 版本 3 8.1.7 或更高版本)

  Oracle 客户机(版本 10.1.0.2.0 或更高版本)

  Oracle Net(版本 10.1.0.2.0 或更高版本)

  Oracle Data Providers for .NET(版本 10.1.0.2.0 或更高版本)

  Microsoft .NET Framework(版本 1.0 或更高版本)

  Microsoft .NET 框架 SDK(版本 1.0 或更高版本)

  如果您打算使用企业服务事务或分布式事务来开发和运行应用程序,那么您还需要安装 Oracle Services for Microsoft Transaction Server(10.1.0.2.0 或更高版本)。

  您需要分别下载和安装 .NET 框架以及 SDK(先安装框架)。您还需要下载和安装 Oracle 数据库 10g,它包括 Oracle Data Provider for .NET (ODP.NET)。您可以选择在不同计算机或同一计算机上安装 ODP.NET 和数据库服务器。

  注意:ODP.NET 驱动程序针对 Oracle 数据库访问进行了优化,因此可以获得最佳性能,并且它们还支持 Oracle 数据库的丰富特性,如 BFILE、BLOB、CLOB、XMLType 等。如果您正在开发基于 Oracle 数据库的 .NET 应用程序,那么就特性和性能来讲,ODP.NET 无疑是最佳的选择。

  数据库模式设置

  首先,您需要设置数据库模式,在此我们使用一个简化的 Web 商店示例。您必须首先创建一个名为 store 的用户并按以下方式将所需的权限授予该用户(您必须首先以拥有 CREATE USER 权限的用户身份登录数据库才能创建用户):

  CREATE USER store IDENTIFIED BY store;
  GRANT connect, resource TO store;

  注意:您会在源代码文件 db1.sql 中找到前两个语句和该部分中出现的设置 store 模式的其他语句。

  接下的语句以 store 用户身份进行连接:

  CONNECT store/store;

  以下语句创建了所需的两个数据库表,名称分别为 product_types 和 products:

  CREATE TABLE product_types (
  product_type_id INTEGER
  CONSTRAINT product_types_pk PRIMARY KEY,
  name VARCHAR2(10) NOT NULL
  );

  CREATE TABLE products (
  product_id INTEGER
  CONSTRAINT products_pk PRIMARY KEY,
  product_type_id INTEGER
  CONSTRAINT products_fk_product_types
  REFERENCES product_types(product_type_id),
  name VARCHAR2(30) NOT NULL,
  description VARCHAR2(50),
  price NUMBER(5, 2)
  );

  注意:如果您在一个不同的模式中为 store 用户创建了这些数据库表,那么您将需要修改示例配置文件(您稍后将看到)中的模式名称。

  表 product_types 用于存储示例在线商店可能库存的产品类型的名称,表 products 包含了所销售产品的详细信息。

  下面的 INSERT 语句为表 product_types 和 products 添加行:

  INSERT INTO product_types (
  product_type_id, name
  ) VALUES (
  1, 'Book'
  );
  INSERT INTO product_types (
  product_type_id, name
  ) VALUES (
  2, 'DVD'
  );

  INSERT INTO products (
  product_id, product_type_id, name, description, price
  ) VALUES (
  1, 1, 'Modern Science', 'A description of modern science', 19.95
  );
  INSERT INTO products (
  product_id, product_type_id, name, description, price
  ) VALUES (
  2, 1, 'Chemistry', 'Introduction to Chemistry', 30.00
  );
  INSERT INTO products (
  product_id, product_type_id, name, description, price
  ) VALUES (
  3, 2, 'Supernova', 'A star explodes', 25.99
  );
  INSERT INTO products (
  product_id, product_type_id, name, description, price
  ) VALUES (
  4, 2, 'Tank War', 'Action movie about a future war', 13.95
  );

  COMMIT;

  接下来,您将了解有关数据库事务的内容。

[1] [2] [3] 下一页  

时间: 2024-11-08 19:53:20

在 .NET中使用Oracle数据库事务的相关文章

plsql developer-如何访问另一台计算机中的oracle数据库

问题描述 如何访问另一台计算机中的oracle数据库 有两台笔记本,一个配置高一些,安装了Oracle数据库,另一台配置低一些,没有安装,该怎么配置可以使用plsql developer工具访问高配置电脑中的数据库呢?求大神解答,详细一点哈!本人有点笨,不胜感激! 解决方案 参考:http://blog.csdn.net/metal1/article/details/41799669http://www.jb51.net/article/48676.htm 解决方案二: 首先oracle数据库得

ASP高级技巧:在ASP中使用Oracle数据库

oracle|高级|技巧|数据|数据库 Oracle是世界上用得最多的数据库之一,活动服务器网页(ASP)是一种被广泛用于创建动态网页的功能强大的服务器端脚本语言.许多ASP开发人员一直在考虑,能否在开发互联网应用.电子商务网站.互联网管理系统时结合使用ASP和Oracle数据库?这个问题的答案是肯定的,我们还可以使用VB访问Oracle数据库.在本篇文章中,我们将主要讨论如何使用ASP来处理Oracle数据库中数据的方法. 在开始讨论这个问题前,我们需要了解几个背景知识,Oracle Obje

在ASP中使用Oracle数据库

Oracle是世界上用得最多的数据库之一,活动服务器网页(ASP)是一种被广泛用于创建动态网页的功能强大的服务器端脚本语言.许多ASP开发人员一直在考虑,能否在开发互联网应用.电子商务网站.互联网管理系统时结合使用ASP和Oracle数据库?这个问题的答案是肯定的,我们还可以使用VB访问Oracle数据库.在本篇文章中,我们将主要讨论如何使用ASP来处理Oracle数据库中数据的方法. 在开始讨论这个问题前,我们需要了解几个背景知识,Oracle Objects for OLE就是其中之一.Or

在ASP中使用Oracle数据库技巧(二)

如果已经真正地理解了我们在上面讨论的一些方法(Edit.Update和AddNew),也许有的读者已经知道该如何在Oracle数据库中删除记录了. <% '删除所有符合上面条件的记录  OraDynaset.Delete %> 在Oracle8i中搜索和更新数据记录的代码 1)搜索   <%          'RetriveRecProc.asp -使用ASP的Oracle Objects for OLE更新数据记录          %>        <%  '定义作为

在ASP中使用Oracle数据库技巧

Oracle是世界上用得最多的数据库之一,活动服务器网页(ASP)是一种被广泛用于创建动态网页的功能强大的服务器端脚本语言.许多ASP开发人员一直在考虑,能否在开发互联网应用.电子商务网站.互联网管理系统时结合使用ASP和Oracle数据库?这个问题的答案是肯定的,我们还可以使用VB访问Oracle数据库.在本篇文章中,我们将主要讨论如何使用ASP来处理Oracle数据库中数据的方法. 在开始讨论这个问题前,我们需要了解几个背景知识,Oracle Objects for OLE就是其中之一.Or

C#中执行Sqlite数据库事务的方式

在 C#中执行Sqlite数据库事务有两种方式:Sql代码和C#代码 1.Sql代码: BEGIN- COMMIT /ROLLBACK 2.C#代码: using (SQLiteConnection conn = SqliteHelper.GetSQLiteConnection()) { DbTransaction trans = conn.BeginTransaction(); try { //Sql语句 trans.Commit();//提交事务 } catch (Exception e)

求ASP.NET中实现ORACLE数据库自动恢复的代码

问题描述 求ASP.NET中实现ORACLE数据库自动恢复的代码,自动备份的好处理,可是还原的时候有表空间和用户等,请问哪位有解决办法? 解决方案 解决方案二:up

如何在项目中应用LinqToSql数据库事务

本文主要涉及LinqToSql数据库事务相关,文章不足之处,欢迎您指出. 一.回顾T-SQL中的事务机制 代码如下: 1 /*加入事务机制后的存储过程*/ 2  create procedure sp_example 3 @param1 int = null, 4 @param2 nvarchar(20) = null 5  as 6 begin tran tranName /*sql 事务的加入*/ 7 insert into table0 (col1,col2,col3) values ('

MSSQL与Oracle数据库事务隔离级别与锁机制对比_oracle

一,事务的4个基本特征 Atomic(原子性): 事务中包含的操作被看做一个逻辑单元,这个逻辑单元中的操作要 么全部成功,要么全部失败. Consistency(一致性): 只有合法的数据可以被写入数据库,否则事务应该将其回滚到最初 状态. Isolation(隔离性): 事务允许多个用户对同一个数据进行并发访问,而不破坏数据的正 确性和完整性.同时,并行事务的修改必须与其他并行事务的修改 相互独立. Durability(持久性): 事务结束后,事务处理的结果必须能够得到固化. 以上属于废话