标识中的非 ASCII 字符

GBase 8s 数据库服务器支持数据库语言环境代码集中的大多数 SQL 标识,如列、连接、约束、数据库、索引、角色、SPL 例程、序列、同义词、表、触发器和视图的名称,使用非 ASCII 字符(宽字符、8 位字符和多字节字符)。

GBase 8s 上,当创建或引用任何这些数据库服务器名称时,您可以使用非 ASCII 字符(8 位和多字节字符):
  • 块名
  • 消息日志文件名
  • 路径名
下列限制影响数据库服务器生成含有非 ASCII 字符的文件名的能力:
  • 数据库服务器必须知道操作系统是否为 8 位干净。
  • DB_LOCALE 设置指定的代码集必须支持这些非 ASCII 字符。

在使用非缺省语言环境的数据库中(其代码集支持多字节或其他非 ASCII 字符),您声明大多数 SQL 标识时,可以使用那些非 ASCII 字符,如下表中所列示。

在下表中,标识类型列列示可以具有 SQL 标识或操作系统标识的各种对象类别。SQL 段列显示 GBase 8s SQL 指南:语法 中提供标识语法的段。示例上下文列列示可以声明或可以引用标识的 SQL 语句。
表 1. 支持非 ASCII 字符的 SQL 标识
标识类型 SQL 段 示例上下文
别名 标识 SELECT
强制转换 表达式 CREATE CAST
列名 标识 CREATE TABLE
连接名 带引号字符串 CONNECT(有关更多信息,请参阅指定带引号字符串。)
约束名 数据库对象名 CREATE TABLE
游标名 标识 DECLARE(有关更多信息,请参阅处理非 ASCII 字符。)
数据库名称 数据库对象名 CREATE DATABASE
单值数据类型名 标识,数据类型 CREATE DISTINCT
文件名 LOAD
函数名 数据库对象名 CREATE FUNCTION
主变量 FETCH(有关更多信息,请参阅处理非 ASCII 字符。)
索引名 数据库对象名 CREATE INDEX
不透明数据类型名 标识,数据类型 CREATE OPAQUE TYPE
操作符类名称 数据库对象名 CREATE OPCLASS
分区 标识 ALTER FRAGMENT
例程名 数据库对象名 CREATE FUNCTION
例程名 数据库对象名 CREATE PROCEDURE
角色名 标识 CREATE ROLE
行数据类型 标识 CREATE ROW TYPE
序列名称 数据库对象名 CREATE SEQUENCE
SQL 语句标识 标识 PREPARE(有关更多信息,请参阅处理非 ASCII 字符。)
SPL 例程名 数据库对象名 CREATE PROCEDURE
SPL 例程变量 无(特定于语言) CREATE PROCEDURE FROM
同义词 数据库对象名 CREATE SYNONYM
表名 数据库对象名 CREATE TABLE
触发器相关名 数据库对象名 CREATE TRIGGER
触发器名 数据库对象名 CREATE TRIGGER
视图名 数据库对象名 CREATE VIEW