Сделай Сам Свою Работу на 5

Создание и удаление бд и её элементов





Перед выполнением SQL-команд, которые будут встречаться в данном разделе и последующих необходимо:

– запустить утилиту pgAdmin III;

– подключиться к серверу;

– выбрать БД (в нашем случае это zakazy);

– открыть «Инструмент запросов», в котором и будут выполняться все SQL-команды.

Базы данных

Создание БД.

В PostgreSQL перед созданием любой базы данных необходимо инициализировать область памяти базы данных на диске. Эта область памяти называется кластером базы данных. Кластер базы данных – это коллекция баз данных, управляемых одним экземпляром работающего сервера базы данных (другими словами, процессом postmaster). В терминах файловой системы, кластер базы данных – это общий каталог, в котором хранятся все данные. Обычно в качестве владельца сервера и его данных используется одна учетная запись пользователя, которая называется учетная запись Postgres. Для выполнения многих операций (например, для запуска сервера) требуется, чтобы вы вошли в систему с учетной записи этого пользователя.

После инициализации кластер базы данных содержит базу данных postgres, которая по умолчанию используется утилитами, пользователями и сторонними приложениями. Кроме того, создается еще одна база данных (называемая template1), которая используется в качестве шаблона для создания новых баз данных. При установке СУБД мы установили флажок «Инициализировать кластер базы данных», поэтому этот шаг мы пропускаем.



Команда SQL CREATE DATABASE создает новую БД и имеет следующий синтаксис:

CREATE DATABASE имя_БД

[WITH [TEMPLATE = шаблон ] [ ENCODING = копировка] ]

Параметр имя_БДопределяет имя создаваемой базы данных. Имена баз данных должны начинаться с алфавитного символа, а их длина не должна превы­шать 31 символа. PostgreSQL позволяет создать в заданном каталоге любое коли­чество баз данных (естественно, при наличии свободного места на диске).

За необязательным ключевым словом WITH можно указать дополнитель­ные атрибуты:

– TEMPLATE = шаблон. Шаблон, используемый в качестве прототипа для создания новой базы данных. Все объекты, присутствующие в шаблоне, воспроизводят­ся в созданной базе. Если шаблон не задан, PostgreSQL создает новую базу дан­ных на основе шаблона templatel. Если вы хотите создать пустую базу данных, не содержащую объектов из templatel, укажите шаблон template0.



– ENCODING = кодировка. Значение параметра определяется либо в виде строковой константы, описывающей тип кодировки (UTF8, win1251 и т. д.), либо в виде эквивалентной числовой константы PostgreSQL. Если ключевое слово ENCODING не задано, PostgreSQL создает базу данных в кодировке по умолчанию, которую указывали при установке.

Пример создания новой БД

После подключения к серверу необходимо выбрать БД postgres, которая создается при установке СУБД. Нажимаем по пиктограмме «Выполнить пользовательские SQL запросы».

Ввести и выполнить слудующую SQL-команду:

CREATE DATABASE uch_DB

WITH OWNER = postgres

ENCODING = 'WIN1251'

Рис. 3. Создание базы данных uch_DB с помощью диалога uch_DB

При этом если обновить браузер объектов, появится новая БД – zakazy.

Для создания базы данных можно также воспользоваться визуальным средствами pgAdmin III.

Рис. 4. Создание базы данных с помощью визуального средства

Удаление БД

Команда DROP DATABASE– удалят БД. Ее синтаксис:

DROP DATABASE имя_БД

Параметр данной команды определяет имя базы данных, удаляемой из системы. Учтите, что удаление базы данных возможно лишь при отсутствии под­ключившихся пользователей, в противном случае команда завершается неудачей.

Схемы в PostgreSQL

База данных могут содержать одну или более именованных схем, которые содержат таблицы. Схемы также содержат и другие виды именованных объектов, включая типы данных, функции и операторы. То же самое имя объекта может без какого-либо конфликта использоваться в других схемах, например, схемы schema1 и myschema могут содержат таблицы с именем mytable. В отличие от баз данных, схемы жёстко не разделяются: пользователь может получить доступ к объектам в любой схеме в пределах базы данных, к которой он подключён, если у него есть соответствующие привилегии.



Существует несколько причин для использования схемы:

– для разрешения нескольким пользователям использовать одну базу данных, не смешивая их данные.

– для организации объектов базы данных в логические группы, чтобы сделать их более прозрачными в управлении.

– разные приложения могут быть размещены в отдельных схемах, чтобы не было конфликтов в использовании имён объектов.

Схемы являются аналогами каталогов в операционной системе, за исключением того, что схемы не могут быть вложенными.

Схема PUBLIC

В следующих разделах мы будем создавать таблицы и другие элементы БД. Если не указывать имя схемы, то по умолчанию, такие таблицы (и другие элементы) автоматически помещаются в схему с именем «public». Каждая новая база данных содержит такую схему. Таким образом, следующие примеры эквивалентны:

CREATE TABLE sluzhashie (...);

CREATE TABLE public.sluzhashie (...);

Команда CREATE SСHEMA

Для создания схемы, используем команду SQL CREATE SCHEMA имя_схемы. Например:

CREATE SCHEMA zakazy;

Чтобы создать объект в схеме или получить к нему доступ, необходимо указать полное имя, которое состоит из имени схемы и имени таблицы, которые отделяются друг от друга точкой: схема.таблица.

Это работает везде, где необходимо указывать имя таблицы, включая команды модификации таблиц и команды доступа к данными. (Для краткости мы будем говорить только о таблицах, хотя те же самые идеи применимы и к другим видам объектов, таким как типы данных, представления, функции и т.д.)

Можно также использовать более общий синтаксис:

база.схема.таблица,

но его наличие необходимо только для соответствия стандарту SQL. Если вы указываете имя базы данных, оно должно совпадать с той базой данных, к которой вы подключились.

Иногда возникает необходимость создать схему, владельцем которой является кто-то другой. Для ограничения активности ваших пользователей в пределах назначенных им пространств имён необходимо указать владельца схемы.

Для этого необходимо выполнить следующую команду SQL, которую можно выполнить с помощью инструмента выполнения запросов SQL:

CREATE SCHEMA имя_схемы AUTHORIZATION имя_пользователя;

Для создания схемы можно также воспользоваться графическим интерфейсом pgAdmin III. Для этого выберите в дереве базы данных на левой панели главного окна узел схемы и в контекстном меню выберите пункт «Новая схема… ». Далее в окне «Новая схема» введите данные как показано на Рис. 5.

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.