![]() | |
#1
| |||
| |||
|
|
Now for a second example, this one involving union and a view based on two relations, not just one as in the first example. Suppose that two of the base relations in the database are SE and SW, where SE provides the identification and immediate properties of suppliers east of the Mississippi River, while SW provides similar information about suppliers west of the Mississippi. Suppose also that SE and SW are union-compatible and that neither SE nor SW contains a column that indicates directly by its values whether the supplier is east or west of the Mississippi. Base: SE ( S# SNAME CITY STATE... ) SBase: W ( S# SNAME CITY STATE... ) Now, suppose that a view S is created as the union of SE and SW. Suppose also that a user is authorized to enter a new row into the view S. Such a request must be reflected in some change applied to the base relations, which are the only relations that reflect the true state of the database. How does the DBMS decide which of the two base relations SE and SW is to be the recipient of this row? Even if two of the immediate properties of suppliers recorded in SE and SW are the city and state in which each supplier is located, it is not appropriate to assume that the DBMS or the database has any knowledge about geography, and in particular about which cities and states are on which side of the river. It is worth noting that, in this second example, the view S is actually the disjoint union of SE and SW, a reasonably simple case; still, however, entry of new rows into the view is not admissible. Nevertheless, whatever it does, the DBMS would be guessing the user's or program's intent, and such behavior is unacceptable in managing a shared database. |
#2
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#3
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#4
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#5
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#6
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#7
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#8
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#9
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
#10
| |||
| |||
|
|
Principle, which is an idea that concerns designers, not DBMS implementations. |
![]() |
| Thread Tools | |
| Display Modes | |
| |