VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

字符集相关接口

OCINlsCharSetNameToId

功能描述

根据字符集名称输出字符集ID。

功能说明

根据字符集名称输出字符集,其中字符集名称的映射和内核保持一致(只有一个特例内核中的-1在驱动中映射为 7)。

接口信息

函数/过程

语法如下:

ub2 OCINlsCharSetNameToId(void  *envhp,  const  oratext  *name);

具体参数解释如下:

  • 输入

    • envhp(IN): OCI 环境或用户会话句柄。如果句柄无效,则函数返回默认值 7(ORACLE 返回0)。

    • name(OUT): 指向以NULL 结尾的 Oracle 数据库宁符集名称的指针。如果了符集名称无效,则该函数返回默认值 7(ORACLE 返回0)。

  • 输出

    • ub2 (OUT) : 输出的字符集ID。

其他说明

OCINlsCharSetIdToName

功能描述

根据字符集ID输出字符集名称。

功能说明

根据字符集ID输出字符集名称。

接口信息

函数/过程

语法如下:

sword OCINlsCharSetIdToName(void  *envhp, oratext  *buf, size_t buflen, ub2 id);

具体参数解释如下:

  • 输入

    • envhp(IN): OCI 环境或用户会话句柄。如果句柄无效,则函数返回OCI_INVALID_HANDLE。

    • buf(OUT): 指向目标缓冲区。如果函数返回 OCI_SUCCESS,则参数包含字符集名称的以NULI结尾的字符串。

    • buflen(IN): 目标缓冲区的大小。建议的大小 OCI_NLS_MAXBUFSZ,以保证Oracle 数据库字符集名称的存储。如果目标缓冲区的大小小于宁符集名称的长度,则该函数返回OCI_ERROR。

    • id(N): 数据库宁符集 ID。

  • 输出

    • sword (OUT) : 函数是否成功执行。

其他说明

OCINlsEnvironmentVariableGet

功能描述

返回环境变量中的字符集 ID。该函数不采用环境句柄。

功能说明

返回环境变量中的字符集ID。该函数不采用环境句柄,因此它返回的字符集ID 和国家/地区字符集ID 是 NLS_LANG 和NLS_NCHAR 中指定的值,而不是保存在 OCI 环境句柄中的值。要获取 OCI环境句柄使用的宁符集ID,请分别调用 OCIAttrGet () 进行 OCI_ATTR_ENV_CHARSET_ID 和OCI_ATTR_ENV_NCHARSET_ID。

接口信息

函数/过程

语法如下:

sword OCINlsEnvironmentVariableGet(void  *valp, size_t size, ub2 item,
                   ub2 charset, size_t   *rsize);

具体参数解释如下:

  • 输入

    • valp(IN/OUT): 返回支持环境变量的值,例如NLS_LANG 宁符集ID 或NLS_NCHAR 字符集ID。

    • size(IN): 指定给定输出值的大小,该大小仅适用于字符串数据。每条信息的最大长度为OCI_NLS_MAXBUFSZ 字节。对于数值数据,将忽略此参数。

    • item(IN): 指定要从全局支持环境变量中获取的以下值之一:

    • OCI_NLS_CHARSET_ID: NLS_LANG ub2 数据类型中的宁符集ID;

      • 如果未设置 NLS_LANG 或设置错误,则使用 LANG;

      • 如果未设置LANG 或设置错误,则使用返回默认宁符集ID (7-UTF8) 。

    • OCI_NLS_NCHARSET_ID: NLS_NCHAR ub2 数据类型中的字符集ID;

      • 如果未设置NLS_NCHAR或设置错误,则返回OCI_NLS_CHARSET_ID 的值。
    • charset(IN): 指定检索到的字符串数据的字符集ID。如果为0,则使用NLS_LANG 值。

  • 输出

    • rsize (OUT) : 返回值的长度(以字节为单位)。

其他说明

OCINlsNumericInfoGet

功能描述

根据输入的获取信息类型获取环境句柄或会话句柄的编码信息。

功能说明

根据输入的获取信息类型获取环境句柄或会话句柄的编码信息。

接口信息

函数/过程

语法如下:

sword OCINlsNumericInfoGet(void  *envhp, OCIError  *errhp, sb4  *val,  ub2 item);

具体参数解释如下:

  • 输入

    • envhp(IN/OUT): OCI 环境或用户会话句柄。如果句柄无效,则函数返回OCI_INVALID_HANDLE。

    • errhp(IN/OUT): OCI 错误句柄。如果存在错误,则会将其记录在 errhp 中,并且该函数返回NULL 指针。可以通过调用 OCIErrorGet () 获取诊断信息。

    • val(OUT): 指向输出数字变量的指针。如果函数返回 OCI_SUCCESS,则参数包含请求的环境句柄字符集信息。

    • item(IN): 它指定要从 OCI 环境句柄获取的项目,可以是以下值之一:

    • OCI_NLS_CHARSET_MAXBYTESZ: OCI 环境或会话句柄宁符集的最大宁符字节大小;

    • OCI_NLS_CHARSET_FIXEDWIDTH: 固定宽度字符集的字符字节大小;0 表示可变宽度字符集。

  • 输出

    • sword (OUT) : 函数是否成功执行。

其他说明