Доступные версии документации

Кодировка соединения по умолчанию

Функция

Определение оператора задания кодировки, используемой клиентским приложением по умолчанию для текущего соединения с БД.

Спецификация
   
<кодировка соединения по умолчанию>::=
Общие правила
  1. Для использования команды в БД должна быть создана и загружена необходимыми данными системная таблица кодировок $$$CHARSET.

  2. <Имя кодировки> задает кодировку, которая будет применяться клиентским приложением по умолчанию в том соединении с БД, по которому подана команда SET NAMES.

  3. Если <кодировка соединения по умолчанию> не задана (после установления соединения с БД), выбор кодировки соединения выполняется по следующим правилам:

    • если определена переменная окружения LINTER_CP, то используется определяемая этой переменной кодировка;

    • если переменная LINTER_CP не определена, используется текущая кодировка операционной системы, в которой работает клиентское приложение.

  4. <Кодировка соединения по умолчанию> может быть установлена в любой момент выполнения соединения с БД и остается неизменной до отсоединения от БД или до изменения ее другой <кодировкой соединения по умолчанию>.

  5. Команда SET NAMES позволяет создавать по умолчанию все таблицы и символьные столбцы в них в указанной кодировке, потому что при создании таблиц (столбцов) используется следующий приоритет выбора кодировки:

    • используется кодировка, заданная для таблицы или столбца непосредственно в SQL-запросе (CREATE TABLE, ALTER TABLE ADD COLUMN и т.п.) – если задана;

    • иначе кодировка, заданная для канала по SET NAMES – если задана;

    • иначе кодировка, заданная для БД по SET DATABASE DEFAULT CHARACTER SET – если задана;

    • иначе кодировка, заданная для канала другим способом (например, через переменную среды окружения LINTER_CP).

Пример
set names CP866;
Заметили ошибку?
Выделите текст и нажмите Ctrl + Enter