Столбцы новой таблицы задаются в инструкции CREATE TABLE. Определения столбцов представляют собой заключенный в скобки список, элементы которого отделены друг от друга запятыми. Порядок следования определений столбцов в списке соответствует расположению столбцов в таблице. Каждое такое “определение” содержит следующую информацию:
• имя столбца, которое используется для ссылки на столбец в инструкциях SQL. Каждый столбец в таблице должен иметь уникальное имя, но в разных таблицах имена столбцов могут совпадать.
• тип данных столбца, показывающий, данные какого вида хранятся в столбце. Типы данных были рассмотрены ранее. Для некоторых типов, например VARCHAR и FLOAT, требуется дополнительная информация, такая как размерность или число цифр после запятой. Эта информация заключается в скобки и должна следовать за ключевым словом, задающим тип данных.
• значение по умолчанию, которое заносится в столбец в том случае, если в инструкции INSERT для таблицы не указано значение данного столбца.
• указание на то, обязательно ли столбец должен содержать данные. Ограничение NOT NULL, если оно задано, предотвращает занесение в столбец значений NULL, в противном случае значения NULL допускаются.
Создать таблицу ORDERS с первичными и внешними ключами
create table orders (order_n integer not null,
ord_date date not null,
cust_n integer,
sale_n integer,
prod_n varchar2(10),
qty intrger,
amount integer,
primary key (order_n),
constraint placed_by foreign key (cust_n) references customers on delete cascade,
constraint taken_by foreign key (sale_n) references salesreps,
constraint is_for foreign key (prod_n) references products);