Jump to content

Virtual private database

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Cyberbot II (talk | contribs) at 22:55, 24 May 2016 (Removing {{Blacklisted-links}}. No blacklisted links were found. (Peachy 2.0 (alpha 8))). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

A virtual private database or VPD masks data in a larger database so that only a subset of the data appear to exist, without actually segregating data into different tables, schemas, databases. A typical application is constraining sites, departments, individuals, etc. to operate only on their own records and at the same time allowing more privileged users and operations (e.g. reports, data warehousing, etc.) to access on the whole table.

The term is typical of the Oracle DBMS, where the implementation is very general: tables can be associated to SQL functions, which return a predicate as a SQL expression. Whenever a query is executed, the relevant predicates for the involved tables are transparently collected and used to filter rows. SELECT, INSERT, UPDATE and DELETE can have different rules.