Создание многотабличной реляционной базы данных
Таблицы, определенные в табл. 5.1, можно создать или с помощью инструмента для быстрой разработки приложений (Rapid Application Development, RAD), или с помощью языка определения данных (Data Definition Language, DDL), входящего в состав SQL, как показано ниже.
CREATE TABLE CLIENT ( | ||
ClientName | CHARACTER (30), | NOT NULL, |
Address1 | CHARACTER (30), | |
Address2 | CHARACTER (30), | |
City | CHARACTER (25), | |
State | CHARACTER (2), | |
PostalCode | CHARACTER (10), | |
Phone | CHARACTER (13), | |
Fax | CHARACTER (13), | |
ContactPerson | CHARACTER (30)); | |
CREATE TABLE TESTS ( | ||
TestName | CHARACTER (30) | NOT NULL, |
StandardCharge | CHARACTER (30)); | |
CREATE TABLE EMPLOYEE ( | ||
EmployeeName | CHARACTER (30) | NOT NULL, |
Address1 | CHARACTER (30), | |
Address2 | CHARACTER (30), | |
City | CHARACTER (25), | |
State | CHARACTER (2), | |
PostalCode | CHARACTER (10), | |
HomePhone | CHARACTER (13), | |
OfficeExtension | CHARACTER (4), | |
HireDate | DATE, | |
JobClassification | CHARACTER (10), | |
HourSalComm | CHARACTER (1)); | |
CREATE TABLE ORDERS ( | ||
OrderNumber | INTEGER | NOT NULL, |
ClientName | CHARACTER (30), | |
TestOrdered | CHARACTER (30), | |
Salesperson | CHARACTER (30), | |
OrderDate | DATE); | |
CREATE TABLE RESULTS ( | ||
ResultNumber | INTEGER | NOT NULL, |
OrderNumber | INTEGER | |
Result | CHARACTER (50), | |
DateReported | DATE, | |
PrelimFinal | CHARACTER (1)); |
Эти таблицы относятся друг к другу посредством общих атрибутов (столбцов).
- Таблица CLIENT связана с таблицей ORDERS с помощью столбца ClientName.
- Таблица TESTS связана с таблицей ORDERS с помощью столбца TestName (TestOrdered).
- Таблица EMPLOYEE связана с таблицей ORDERS с помощью столбца ЕmployeeName (Salesperson).
- Таблица RESULTS связана с таблицей ORDERS с помощью столбца OrderNumber.