Chapter 3
data dictionary
A DBMS component that stores metadata—data about data. Thus, the data dictionary contains the data definition as well as their characteristics and relationships. A data dictionary may also include data that are external to the DBMS. Also known as an information resource dictionary. See also active data dictionary, metadata, and passive data dictionary.
referential integrity
A condition by which a dependent table's foreign key must have either a null entry or a matching entry in the related table. Even though an attribute may not have a corresponding attribute, it is impossible to have an invalid entry.
full functional dependence
A condition in which an attribute is functionally dependent on a composite key but not on any subset of the key.
system catalog
A detailed system data dictionary that describes all objects in a database.
inner join
A join operation in which only rows that meet a given criterion are selected. The join criterion can be an equality condition (natural join or equijoin) or an inequality condition (theta join). The inner join is the most commonly used type of join. Contrast with outer join.
equijoin
A join operator that links tables based on an equality condition that compares specified columns of the tables.
theta join
A join operator that links tables using an inequality comparison operator (<, >, <=, >=) in the join condition.
secondary key
A key used strictly for data retrieval purposes. For example, customers are not likely to know their customer number (primary key), but the combination of last name, first name, middle initial, and telephone number will probably match the appropriate table row. See also key.
candidate key
A minimal superkey; a key that does not contain a subset of attributes.
composite key
A multiple-attribute key.
set theory
A part of mathematical science that deals with sets, or groups of things, and is used as the basis for data manipulation in the relational model.
closure
A property of relational operators that permits the use of relational algebra operators on existing tables (relations) to produce new relations.
outer join
A relational algebra JOIN operation that produces a table in which all unmatched pairs are retained; unmatched values in the related table are left null. Contrast with inner join. See also left outer join and right outer join.
natural join
A relational operation that links tables by selecting only the rows with common values in their common attribute(s).
relational algebra
A set of mathematical principles that form the basis for manipulating relational table contents; the eight main functions are SELECT, PROJECT, JOIN, INTERSECT, UNION, DIFFERENCE, PRODUCT, and DIVIDE.
foreign key (FK)
An attribute or attributes in one table whose values must match the primary key in another table or whose values must be null. See key.
superkey
An attribute or attributes that uniquely identify each entity in a table. See key.
dependent
An attribute whose value is determined by another attribute.
composite/associative/bridge entity
An entity designed to transform an M:N relationship into two 1:M relationships. The composite entity's primary key comprises at least the primary keys of the entities that it connects. Also known as a bridge entity. See also linking table.
key
An entity identifier based on the concept of functional dependence; keys may be classified in several ways. See also superkey, candidate key, primary key (PK), secondary key, and foreign key.
unique index
An index in which the index key can have only one associated pointer value (row).
index
An ordered array of index key values and row ID values (pointers). Indexes are generally used to speed up and facilitate data retrieval. Also known as an index key.
index key
An ordered array of index key values and row ID values (pointers). Indexes are generally used to speed up and facilitate data retrieval. Also known as an index key.
determinant
Any attribute in a specific row whose value directly determines other values in that row. See also Boyce-Codd normal form (BCNF).
join column(s)
Columns that join two tables. The join columns generally share similar values.
null
In SQL, the absence of an attribute value. Note that a null is not a blank.
right outer join
In a pair of tables to be joined, a join that yields all of the rows in the right table, including the ones with no matching values in the other table. For example, a right outer join of CUSTOMER with AGENT will yield all of the AGENT rows, including the ones that do not have a matching CUSTOMER row. See also left outer join and outer join.
left outer join
In a pair of tables to be joined, a join that yields all the rows in the left table, including those that have no matching values in the other table. For example, a left outer join of CUSTOMER with AGENT will yield all of the CUSTOMER rows, including the ones that do not have a matching AGENT row. See also outer join and right outer join.
attribute domain/domain
In data modeling, the construct used to organize and describe an attribute's set of possible values.
tuple
In the relational model, a table row.
linking table
In the relational model, a table that implements an M:M relationship. See also composite entity.
primary key (PK)
In the relational model, an identifier composed of one or more attributes that uniquely identifies a row. Also, a candidate key selected as a unique entity identifier. See also key.
flags
Special codes implemented by designers to trigger a required response, alert end users to specified conditions, or encode values. Flags may be used to prevent nulls by bringing attention to the absence of a value in a table.
key attribute
The attributes that form a primary key. See also prime attribute.
entity integrity
The property of a relational table that guarantees each entity has a unique value in a primary key and that the key has no null values.
determination
The role of a key. In the context of a database table, the statement "A determines B" indicates that knowing the value of attribute A means that the value of attribute B can be looked up.
synonym
The use of different names to identify the same object, such as an entity, an attribute, or a relationship; synonyms should generally be avoided. See also homonym.
homonym
The use of the same name to label different attributes. Homonyms generally should be avoided. Some relational software automatically checks for homonyms and either alerts the user to their existence or automatically makes the appropriate adjustments. See also synonym.
union-compatible
Two or more tables that share the same column names and have columns with compatible data types or domains.
predicate logic
Used extensively in mathematics to provide a framework in which an assertion (statement of fact) can be verified as either true or false.
functional dependence
Within a relation R, an attribute B is functionally dependent on an attribute A if and only if a given value of attribute A determines exactly one value of attribute B. The relationship "B is dependent on A" is equivalent to "A determines B," and is written as AB.