Начало работы
Подключение
Тесты производительности
Развёртывание
Использование данных
Загрузка данных
Миграция данных
Запрос данных
Управление кластерами
Обновление
Глобальное обслуживание
Масштабирование
Мониторинг
Безопасность
Лучшие практики
Технические принципы
Типы данных
Хранилище
Исполняющий движок
Потоковая обработка (Domino)
MARS3 Индексы
Расширения
Расширенные функции
Расширенный запрос
Федеративные запросы
Grafana
Резервное копирование и восстановление
Аварийное восстановление
Руководство
Настройка производительности
Устранение неполадок
Инструменты
Параметры конфигурации
SQL-команда
Часто задаваемые вопросы
Определяет новое преобразование кодировок.
CREATE [DEFAULT] CONVERSION <name>
FOR <source_encoding> TO <dest_encoding> FROM <function_name>
CREATE CONVERSION определяет новое преобразование между кодировками символьных наборов. Кроме того, преобразования, помеченные как DEFAULT, могут использоваться для автоматического преобразования кодировок между клиентом и сервером. Для этой цели необходимо определить два преобразования: из кодировки A в B и из кодировки B в A.
Для создания преобразования необходимо иметь привилегию EXECUTE на функцию и привилегию CREATE на целевую схему.
conv_proc(
integer, -- source encoding ID
integer, -- destination encoding ID
cstring, -- source string (null terminated C string)
internal, -- destination (fill with a null terminated C string)
integer -- source string length
) RETURNS void;
Используйте команду DROP CONVERSION, чтобы удалить пользовательское преобразование.
Привилегии, необходимые для создания преобразования, могут измениться в будущих версиях.
Обратите внимание, что в данной версии Database пользовательские функции, используемые в пользовательских преобразованиях, должны быть определены как IMMUTABLE. Все скомпилированные модули (файлы разделяемых библиотек) для пользовательских функций должны находиться в одинаковых каталогах на каждом хосте в массиве Database (координаторе и всех сегментах). Эти каталоги также должны входить в переменную окружения LD_LIBRARY_PATH, чтобы сервер мог найти файлы.
Создание преобразования из кодировки UTF8 в LATIN1 с использованием функции myfunc:
CREATE CONVERSION myconv FOR 'UTF8' TO 'LATIN1' FROM myfunc;
CREATE CONVERSION является расширением Database. В стандарте SQL нет оператора CREATE CONVERSION, однако существует оператор CREATE TRANSLATION, который аналогичен по назначению и синтаксису.