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