2.1 The Information Principle is a fundamental principle that underpins the entire relational model. It can be stated as follows:
Definition: The Information Principle states that the only kind of variable allowed in a relational database is the relation variable or relvar. Equivalently, the entire information content of the database at any given time is represented in one and only one way—namely, as values in attribute positions in tuples in relations.
Note that SQL tables (at least, SQL tables in the database) that involve left to right column ordering, or contain duplicate rows or nulls, all violate The Information Principle (see the answer to the next exercise). Interestingly, however, SQL tables with anonymous columns or columns with nonunique names apparently don’t violate the principle. The reason is that the principle as stated applies explicitly to relvars or relations in the database. And while SQL tables in general can have anonymous columns or columns with nonunique names, such tables can’t be part of the database as such. This state of affairs suggests rather strongly that The Information Principle could do with a little tightening up.
2.2 a. True. b. True. c. True. d. True. e. True. f. True. g. True. h. False. (However, it’s “almost” true; there are two small exceptions, both of which I’ll simplify just slightly for present purposes. The first is that if relation r is of type T, then no attribute of r can itself be of type T. The second is that no relation in ...