Содержание



CREATE DATABASE/SCHEMA

Версии сервера

0.9 1.0 1.5.3 1.5.4 1.5.5 2.0 2.0.3 2.0.4 2.1 2.5 3.0
+ + + + + + + + + + +

Формат

CREATE {DATABASE | SCHEMA} '<спецификация файла>'
[USER '<имя пользователя>' [PASSWORD '<пароль>']]
[PAGE_SIZE [=] <целое>]
[LENGTH [=] <целое> [PAGE[S]]]
[DEFAULT CHARACTER SET <набор символов>]
[<вторичный файл>]...;

<вторичный файл> ::= FILE '<спецификация файла>'
[LENGTH [=] <целое> [PAGE[S]]]
[STARTING [AT [PAGE]] <целое>]
Аргумент Описание
'<спецификация файла>' Спецификация файла задает полный путь к создаваемому файлу базы данных и имя файла, включая его расширение. Сам файл должен отсутствовать на внешнем носителе.
USER '<имя пользователя>' Имя пользователя-владельца базы данных. Может содержать до 31 символа. Нечувствительно к регистру.
PASSWORD '<пароль>'Пароль пользователя-владельца базы данных. Может содержать до 64 символов, однако только первые 8 имеют значение. Чувствителен к регистру
PAGE_SIZE Задает размер страницы базы данных. Допустимы значения 4096 (значение по умолчанию), 8192 и 16384.Если вы зададите неправильное значение размера страницы, то система не выдаст сообщения об ошибке, а установит размер до ближайшего меньшего числа. Если указать значение меньше чем 4096, то будет выбрано значение по умолчанию — 4096.
LENGTH Задает количество страниц в первичном файле базы данных.
DEFAULT CHARACTER SET Задает набор символов по умолчанию для строковых типов данных в базе данных.
STARTING AT PAGE Страница, с которой начинается вторичный файл базы данных.

Описание

Оператор CREATE DATABASE/SCHEMA создает новую базу данных. При этом в файл базы данных помещаются многочисленные системные данные. Можно задавать CREATE DATABASE или CREATE SCHEMA. Это синонимы. База данных может располагаться в одном или более файлах. Тогда после описания первичного файла задается описание вторичных файлов.

Для того, чтобы база данных была создана в нужном вам диалекте SQL, следует перед выполнением оператора создания базы данных задать нужный диалект, выполнив оператор SET SQL DIALECT:

SET SQL DIALECT 3;

Замечание:
В более ранних версиях системы управления базами данных могли применяться и меньшие размеры страниц — 1024 и 2048, однако их использование на практике оказалось весьма неэффективным.

Пример

Пример создания однофайловой базы данных

SET SQL DIALECT 3;
CREATE DATABASE 'D:\Work\work.fdb'
USER 'wizard' PASSWORD 'master'
PAGE_SIZE = 16384 DEFAULT CHARACTER SET WIN1251;

Здесь будет создана база данных в диалекте 3, владельцем которой является описанный в системе пользователь wizard с паролем master (этот пользователь должен быть создан в базе данных безопасности до создания демонстрационной базы данных. Размер страницы для этой базы данных установлен максимальным — 16384.

Пример создания многофайловой базы данных

SET SQL DIALECT 3;
CREATE DATABASE 'D:\Work\work.fdb'
USER 'wizard' PASSWORD 'master'
PAGE_SIZE = 4096
DEFAULT CHARACTER SET WIN1251
FILE 'D:\Work\work.fd2'
STARTING AT PAGE 10001
FILE 'D:\Work\work.fd3'
STARTING AT PAGE 20001;

Первичный файл будет содержать 10000 страниц размером 4096 байтов. Как только первичный файл в процессе работы с базой данных будет заполнен пользовательскими и системными данными (количество всех данных превысит 4096 × 10000 байтов, включая и системные данные — заголовки страниц, указатели, индексы, генераторы и т.д.), система управления базами данных начнет помещать новые строки таблиц во второй файл базы данных, work.fd2. Аналогичные действия произойдут, когда будет заполнен и этот вторичный файл. Система начнет помещать данные в следующий вторичный файл — work.fd3. Размер последнего вторичного файла будет увеличиваться до того предела, который допускает используемая версия операционной системы, или пока не будет исчерпана память на внешнем носителе. Управлять размещением в различных файлах базы данных отдельных строк для различных таблиц пользователь не имеет возможности, все эти действия выполняет система управления базами данных.

См. также

ALTER DATABASE, DROP DATABASE, CREATE SHADOW, DROP SHADOW, CONNECT