CREATE CONVERSION

Section: SQL Commands (7)
Updated: 2003-11-02
Index

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>


Index

NAME
SYNOPSIS
DESCRIPTION 描述
PARAMETERS 参数
NOTES 注意
EXAMPLES 例子
COMPATIBILITY 兼容性
SEE ALSO 参见
译者

This document was created by man2html, using the manual pages.
Time: 02:47:46 GMT, June 23, 2004