Chinaunix
标题:
一个有关oracle和db2数据库的问题
[打印本页]
作者:
vickyhyt89
时间:
2003-04-16 20:40
标题:
一个有关oracle和db2数据库的问题
oracle中有两种隔离级别,而db2中有四种,现在是要求不能出现脏读,并且当我使用子查询将一个表中的数据读出插入到另一张表,而此时,有一个事务正在update子查询要选定的记录,怎么让子查询阻塞,等update提交以后再执行?
比如说现在有个两人共享的银行账户,如果其中一个人从数据库中读出它的账户信息,将它插入他的个人财务状况表中,但此时另一个人正在从账户中去前,但是事务没有提交,如果没有保护,则他插入个人财务状况表中有关账户余额的数据就是不正确的
在oracle和db2中好像是使用不同的机制实现的,
在db2中只要将隔离级别指定为游标稳定性就可以了,自动锁定update要修改的行,直到事务提交。
在oracle中是使用select ....for update语句来锁定select语句要选出的行。但是db2不支持select .... for update 语句。
但是如果现在要开发一个应用程序,既可以使用oracle数据库,又可以使用db2数据库,怎么解决这个问题?原来是使用db2数据库的,现在希望对代码最比较小的修改(比如在连数据库的时候,制定一些参数什么的)就能使用oracle数据库,这个可以实现吗?
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2