table of contents
CREATE CONVERSION(7) | SQL Commands | CREATE CONVERSION(7) |
NAME¶
CREATE CONVERSION - 定義一個用戶定義的碼制轉換
SYNOPSIS¶
CREATE [DEFAULT] CONVERSION name
FOR source_encoding TO dest_encoding FROM funcname
DESCRIPTION 描述¶
CREATE CONVERSION 定義一種新的編碼轉換。 轉換的名字可以用在 convert 函數內部聲明特定的編碼轉換。 同樣,標記爲 DEFAULT 的轉換可以用於在前端和後端之間的自動編碼轉換。 出於這個原因,我們必須定義兩種轉換,從編碼 A 到 B 以及從編碼 B 到 A。
爲了可以創建轉換,你必須在函數上有EXECUTE權限並且有在目標模式上的CREATE權限。
PARAMETERS 參數¶
- DEFAULT
- DEFAULT 子句表示這種轉換對於從這種源編碼到目的編碼的情況是缺省的。在一個模式裏每個編碼對應該只有一個缺省編碼。
- name
-
轉換的名字。轉換名可以用模式修飾。如果沒有,那麼轉換就在當前模式中定義。轉換名在一個模式裏必須唯一。 - source_encoding
-
源編碼名。 - dest_encoding
-
目的編碼名。 - funcname
-
用於執行轉換的函數。這個函數名可以用模式名修飾。 如果沒有,那麼將從路徑中找出這個函數。
此函數必須有如下的樣子:conv_proc(
integer, -- 源編碼 ID
integer, -- 目的編碼 ID
cstring, -- 源字串(空結尾的 C 字串)
cstring, -- 目的字串(空結尾的 C 字串)
integer -- 源字串長度 ) RETURNS void;
NOTES 注意¶
使用 DROP CONVERSION 刪除用戶定義的轉換。
創建轉換所需要的權限可能在未來的版本中改變。
EXAMPLES 例子¶
用 myfunc 創建一個從編碼 UNICODE 到 LATIN1 的轉換:
CREATE CONVERSION myconv FOR 'UNICODE' TO 'LATIN1' FROM myfunc;
COMPATIBILITY 兼容性¶
CREATE CONVERSION 是 PostgreSQL 的擴展。 在 SQL 標準裏沒有CREATE CONVERSION 語句。
SEE ALSO 參見¶
ALTER CONVERSION [alter_conversion(7)], CREATE FUNCTION [create_function(l)], DROP CONVERSION [drop_conversion(l)]
譯者¶
Postgresql 中文網站 何偉平 <laser@pgsqldb.org>
跋¶
本頁面中文版由中文
man 手冊頁計劃提供。
中文 man
手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
2003-11-02 | SQL - Language Statements |