按架构对Oracle表进行分区

时间:2015-01-14 03:51:06

标签: oracle

是否可以按模式在Oracle中对表进行分区?

我想要使用的具体示例是创建一个名为" billing"的公共表空间。它包含一个主事务表,它具有事务所共有的所有元素(trans id,date,transaction completed等),但还有一个" application id"存储创建事务的Web应用程序。

换句话说,我希望有几个不同的Web应用程序使用自己的模式来引用相同的公共事务表,但是可以通过"应用程序ID"并且只让他们能够看到该Web应用程序创建的事务。

例如,假设我们有两个具有自己的表空间(tablespace_1和tablespace_2)的Web应用程序,它们都可以看到公共" billing.transactions"表,但每个表空间只能看到相对于其模式的那些事务,即tablespace_1只能看到具有"应用程序ID"为1,并且tablespace_2只能查看具有"应用程序ID"的事务。 2。

这甚至可能吗?

为了记录,我使用的是Oracle 11g。

1 个答案:

答案 0 :(得分:0)

好的,在做了一些谷歌搜索之后,我设法找到了我想要的解决方案。它被称为"虚拟专用数据库"。

这使我可以通过模式用户自动将应用程序ID附加到查询中,并通过模式用户强制执行完整性,以便他们只能插入/更新/选择他们应该能够看到的事务。