Примеры
Следующая инструкция создает одиночную таблицу с PRIMARY KEY:
CREATE TABLE COUNTRY
(COUNTRY COUNTRYNAME NOT NULL PRIMARY KEY,
CURRENCY VARCHAR(10) NOT NULL);
Следующая инструкция создает таблицу с UNIQUE ограничением и на уровне столбца и на уровне таблицы:
CREATE TABLE STOCK
(MODEL SMALLINT NOT NULL UNIQUE,
MODELNAME CHAR(10) NOT NULL,
ITEMID INTEGER NOT NULL,
CONSTRAINT MOD_UNIQUE UNIQUE (MODELNAME, ITEMID));
Следующая инструкция иллюстрирует PRIMARY KEY, FOREGEN KEY и CHECK ограничения на уровне таблицы. Ограничение PRYMARY KEY базируется на трех столбцах. Этот пример так же иллюстрирует создание столбца типа массив VARCHAR.
CREATE TABLE JOB
(JOB_CODE JOBCODE NOT NULL,
JOB_GRADE JOBGRADE NOT NULL,
JOB_COUNTRY COUNTRYNAME NOT NULL,
JOB_TITLE VARCHAR(25) NOT NULL,
MIN_SALARY SALARY NOT NULL,
MAX_SALARY SALARY NOT NULL,
JOB_REQUIREMENT BLOB(400,1),
LANGUAGE_REQ VARCHAR(15) [5],
PRIMARY KEY (JOB_CODE, JOB_GRADE, JOB_COUNTRY),
FOREIGN KEY (JOB_COUNTRY) REFERENCES COUNTRY (COUNTRY),
CHECK (MIN_SALARY < MAX_SALARY));
Следующая инструкция создает таблицу с вычисляемым столбцом:
CREATE TABLE SALARY_HISTORY
(EMP_NO EMPNO NOT NULL,
CHANGE_DATE DATE DEFAULT "NOW" NOT NULL,
UPDATER_ID VARCHAR(20) NOT NULL,
OLD_SALARY SALARY NOT NULL,
PERCENT_CHANGE DOUBLE PRECISION DEFAULT 0 NOT NULL
CHECK (PERCENT_CHANGE BETWEEN -50 AND 50),
NEW_SALARY COMPUTED BY
(OLD_SALARY + OLD_SALARY * PERCENT_CHANGE / 100),
PRIMARY KEY (EMP_NO, CHANGE_DATE, UPDATER_ID),
FOREIGN KEY (EMP_NO) REFERENCES EMPLOYEE (EMP_NO));
В следующей инструкции первый столбец сохраняет тип сортировки установленный по умолчанию для базы данных. Второй столбец имеет отличный тип сортировки, а определение третьего столбца включает, и кодировку и порядок сортировки.
CREATE TABLE BOOKADVANCE
(BOOKNO CHAR(6),
TITLE CHAR(50) COLLATE ISO8859_1,
EUROPUB CHAR(50) CHARACTER SET ISO8859_1 COLLATE FR_FR);
CREATE GENERATOR
Синтаксис
CREATE GENERATOR name;
name |
Новое уникальное имя создаваемого генератора. |
Примеры
Следующая инструкция создает генератор EMPNO_GEN и триггер CREATE_EMPNO. Триггер использует генератор для создания последовательных числовых ключей, с приращение 1, для столбца NEW.EMPNO:
CREATE GENERATOR EMPNO_GEN;
CREATE INDEX
Синтаксис
CREATE [UNIQUE] [ASC[ENDING] | DESC[ENDING]]
INDEX index ON table (col [, col ...]);
UNIQUE |
Определяет, что индексируемая колонка таблицы содержит уникальные неповторяющиеся значения |
ASC[ENDING] |
Сортировка колонки по возрастанию, используется по-умолчанию если не указано иное. |
DESC[ENDING] |
Сортировка колонки по убыванию, используется по-умолчанию если не указано иное. |
index |
Уникальное имя индекса |
table |
Имя таблицы, для которой строится индекс |
col |
Имя колонки в таблице, для которого строится индекс |
Примеры
Следующая инструкция создает уникальный индекс:
CREATE UNIQUE INDEX PRODTYPEX ON PROJECT (PRODUCT, PROJ_NAME);
Следующая инструкция создает убывающий индекс:
CREATE DESCENDING INDEX CHANGEX ON SALARY_HISTORY (CHANGE_DATE);
Следующая инструкция создает индекс, состоящий из двух столбцов:
CREATE INDEX NAMEX ON EMPLOYEE (LAST_NAME, FIRST_NAME);
CREATE PROCEDURE
