Keys in SQL
SQL support for keys in the following respects:
- SQL does not require at least one key for every base table. If no key is explicitly declared, then KEY {ALL BUT} is implicit.
- When no key is specified there is no prohibition on multiple appearances of the same row.
- SQL does not recognize the empty set as a key.
- SQL allows a key to be a proper superset of another key for the same base table. (This "feature" is sometimes used as a workaround for the fact that the columns of the foreign key are required to correspond to those of a declared key of the referenced table.)