![]() |
![]() |
![]() |
CREATE DATABASE Создание новой базы данных в PostgreSQL. Синтаксис CREATE DATABASE база_данных [ WITH [ LOCATION = { 'каталог' | DEFAULT } ] [ TEMPLATE = шаблон DEFAULT ] [ ENCODING = имя_нодировки | номер_кодировки | DEFAULT ] ] Параметры
ВНИМАНИЕ В параметре каталог обычно передается имя системной переменной среды, значение которой описывает инициализированный каталог базы данных. Тем не менее, если при компиляции PostgreSQL использовалась команда gmake с ключом CPPFLAGS=-DALLOW_ABSOLUTE_DBPATHS, можно ввести полный, абсолютный путь.
Результаты
Описание Команда CREATE DATABASE создает в системе новую базу данных. Пользователь PostgreSQL, под именем которого вы зарегистрированы, автоматически становится владельцем новой базы данных, поэтому перед вызовом команды следует убедиться в том, что вы работаете под правильным именем. ПРИМЕЧАНИЕ При крайней необходимости владельца базы данных можно изменить, для чего с полем datdba системной таблицы pg_database выполняется команда UPDATE с системным идентификатором другого пользователя PostgreSQL. Параметр LOCATION обычно описывает переменную среды, содержащую путь к каталогу, в котором создается новая база данных. Переменная должна существовать в рабочей среде пользователя, запустившего процесс postmaster. Таким образом администраторы могут лучше управлять тем, в каких каталогах создаются новые базы данных. За дополнительной информацией по этой теме обращайтесь к главе 9. Каталог, выбранный для хранения базы данных, должен быть предварительно инициализирован командой initlocation (или initdb). Команды описаны в главе 9. ПРИМЕЧАНИЕ Если при компиляции PostgreSQL был установлен ключ ALLOW_ABSOLUTE_PATH (посредством передачи ключа CPPFLAGS=-DALLOW_ABSOLL)TE_PATH утилите groake после конфигурации), при создании базы данных можно указывать абсолютные пути. По умолчанию этот режим запрещен, что связано с проблемами безопасности и целостности данных, возникающими при создании баз данных в произвольных каталогах. При создании новой базы данных PostgreSQL создает дубликат указанного шаблона (по умолчанию— tempiatel). Чтобы использовать а качестве шаблона другую базу данных, укажите ее имя в секции TEMPLATE. Чтобы создать пустую базу данных, не содержащую копию объектов шаблона, выберите шаблон template0. Примеры Следующая команда создает базу данных с именем booktown: tempiatel=# CREATE DATABASE booktown; CREATE DATABASE В следующем фрагменте та же база данных создается в другом каталоге: tempiatelHf CREATE DATABASE booktown WITH LOCATION = '/usr/local/pgsql/booktown'; CREATE DATABASE |
![]() |
![]() |
![]() |