Команды SQL всегда начинаются с действия – слова или группы слов, описывающих выполняемую операцию. Кроме того, команда SQL обычно содержит одну или несколько секций, уточняющих ее смысл.
Основные действия PostgreSQL:
CREATE DATABASE Создание новой базы данных
CREATE INDEX Создание нового индекса для столбца таблицы
CREATE SEQUENCE Создание новой последовательности в существующей базе данных
CREATE TABLE Создание новой таблицы в существующей базе данных
CREATE TRIGGER Создание нового определения триггера
CREATE VIEW Создание нового представления для существующей таблицы
SELECT Выборка записей из таблицы
INSERT Вставка одной или нескольких новых записей в таблицу
UPDATE Модификация данных в существующих записях
DELETE Удаление существующих записей из таблицы
DROP DATABASE Уничтожение существующей базы данных
DROP INDEX Удаление индекса столбца из существующей таблицы
DROP SEQUENCE Уничтожение существующего генератора последовательности
DROP TABLE Уничтожение существующей таблицы
DROP TRIGGER Уничтожение существующего определения триггера
DROP VIEW Уничтожение существующего представления
CREATE USER Создание в системе новой учетной записи пользователя PostgreSQL
ALTER USER Модификация существующей учетной записи пользователя PostgreSQL
DROP USER Удаление существующей учетной записи пользователя PostgreSQL
GRANT Предоставление прав доступа к объекту базы данных
REVOKE Лишение прав доступа к объекту базы данных
CREATE FUNCTION Создание новой функции SQL в базе данных
CREATE LANGUAGE Создание нового определения языка в базе данных
CREATE OPERATOR Создание нового оператора SQL в базе данных
CREATE TYPE Создание нового типа данных SQL в базе данных
П.3.2. Форматирование команд SQL
Команды SQL состоят из последовательности элементов – лексем. Лексемы могут находиться в одной или нескольких строках, поскольку модуль лексического разбора PostgreSQL игнорирует лишние пропуски (в том числе разрывы строк).
Приведем пример команды SQL, которая в первом случае задана в одной строке, а во втором повторяется с разбивкой на несколько строк.
· SELECT * FROM my_list;
· SELECT *
FROM
my_list;
Лексемы второй команды разделены дополнительными пробелами и символами новой строки. PostgreSQL игнорирует лишние пробелы и разрывы строк, вследствие чего команды являются синтаксически эквивалентными. Следует пользоваться этим фактом и разбивать длинную команду SQL на несколько строк, чтобы упростить ее чтение. Для таких простых команд, как в приведенном выше примере, это не нужно, но разбиение пригодится при работе со сложными командами SQL с многочисленными секциями, выражениями и условиями.
П.3.3. Выполнение запросов
В psql существует два способа ввода и выполнения запросов. В интерактивном режиме запросы обычно вводятся непосредственно в приглашении командной строки (то есть из стандартного ввода). Команда psql \i читает файл и использует его содержимое в качестве входных данных.
Чтобы передать PostgreSQL команду SQL, следует просто ввести ее в приглашении. Весь вводимый текст накапливается до тех пор, пока ввод не будет завершен символом точки с запятой (;). Ввод команды не прерывается даже разрывами строк, что позволяет распределить запрос по нескольким строкам.
Если в предыдущей строке присутствует символ, требующий парного завершителя (например, круглой скобки или кавычки), этот символ включается в приглашение следующей строки. Например, если начать команду CREATE TABLE с открывающей круглой скобкой и перейти на другую строку, то приглашение будет выглядеть следующим образом:
booktown=# CREATE TABLE employees (
booktown(#
Ввод команды продолжается. Открывающая круглая скобка в приглашении psql напоминает о том, что в команду необходимо включить закрывающую круглую скобку.
Дата: 2019-02-19, просмотров: 240.