Самоучитель по SQL-сервер в Linux



SET

Присваивание значений конфигурационным переменным.

Синтаксис

SET переменная {ТО = } { значение \ 'значение' DEFAULT }

SET TIME ZONE { 'часовой_пояс' \ LOCAL DEFAULT }

Параметры

  • переменная. Имя конфигурационной переменной, которой присваивается новое значение.
  • значение. Новое значение переменной. Ключевое слово DEFAULT возвращает переменной значение по умолчанию.
  • часовой_пояс. Часовой пояс, в котором находится клиент. Допустимые значения:
    • PST8PDT — тихоокеанское стандартное/летнее время (смещение от времени по Гринвичу — 8 часов);
    • EST5EDT — стандартное/летнее время на восточном побережье (смещение от времени по Гринвичу — 5 часов);
    • NZST13NZDT — Новая Зеландия, стандартное/летнее время (смещение от времени по Гринвичу — 13 часов).
  • LOCAL. Часовой пояс определяется конфигурацией локальной системы.
  • DEFAULT. Переменной возвращается значение по умолчанию.

Результаты

  • SET VARIABLE. Сообщение выдается при успешном изменении значения переменной.
  • ERROR: not a valid option name: (имя). Ошибка — переменная с указанным именем не существует.
  • ERROR: permission denied. Ошибка — пользователь не обладает правами для изменения заданной переменной.
  • ERROR: name can only be set at start-up. Ошибка — присваивание указанной переменной может выполняться только при запуске системы.

Описание

Команда SET изменяет значения конфигурационных переменных PostgreSQL. Ниже перечислены переменные, с которыми работает команда SET.

  • CLIENT_ENCODING. Расширенная кодировка, используемая на стороне клиента (ее/и ее поддержка включена в PostgreSQL).
  • DATESTYLE. Стиль представления даты и времени. Значение выбирается из ЧИСЛЕ основных форматов вывода, двух дополнительных форматов или же определяется комбинацией основного формата с дополнительным. Исходный формат даты/времени определяется переменной среды PGDATESTYLE. Также возможш инициализация формата при помощи ключей командной строки postmaster Например, при запуске postmaster с ключом -о "-е" выбирается европейски! формат представления даты (ключи postmaster описаны в главе 9). Ниже пере-числены допустимые стили представления даты и времени.
    • ISO. Датам время выводятся в формате ISO-8601 (маска ГГГГ-ММ-ДД ЧЧ:ММ:СС) Формат используется по умолчанию.
    • SQL. Дата и время выводятся в формате Oracle/Ingres. Несмотря на название, по умолчанию в SQL используется не этот формат, a ISO-8601.
    • Postgres. Традиционный формат даты и времени PostgreSQL. о German. Немецкий формат даты (маска ДД. ММ. ГГГГ).
    • European. Стандартный европейский формат даты, дополнение форматов SQL и PostgreSQL. Дата выводится в формате ДД/ММ/ГГГГ.
    • NonEuropean, US. Стандартный американский формат даты, дополнение форматов SQL и PostgreSQL. Дата выводится в формате ММ/ДД/ГГГГ.
  • SEED. Переменная инициализирует внутренний генератор случайных чисел PostgreSQL, используемый функцией randomO. Допустимыми значениями являются вещественные числа в интервале от 0 до 1. Переданное число умножается на 2:!0. Генератор случайных чисел также инициализируется функцией SQL setseedO с одним аргументом типа double precision.
  • SERVER_ENCODING. Расширенная кодировка, используемая на стороне сервера (если ее поддержка включена в PostgreSQL).

Примеры

В следующем фрагменте при помощи переменной DATESTYLE выбирается традиционный формат даты PostgreSQL (Postgres) с дополнительным форматом US, обеспечивающим представление даты по американским стандартам.

booktown=# SET DATESTYLE TO Postgres.US:

SET VARIABLE

В следующем примере выбирается формат представления даты и времени по стандарту ISO:

booktown=# SET DATESTYLE TO ISO:

SET VARIABLE