返回首页

gbase数据、南大通用产品文档:GBase8s如何输入 SQL 语句

更新日期:2024年09月11日

SQL 语言是自由格式的(如同 C 或 PASCAL),通常忽略空格字符(例如
TAB 、LINEFEED 和各语句或语句元素之间额外的空格)。然而,必须至少有
一个空白字符或其它定界符将关键字和标识与其它语法标记分开。
除了在带引号字符串中以外,SQL 是不区分大小写的;另见 标识符。在符合
ANSI 的数据库中,如果没有用双引号 ( " ) 定界对象的 owner ,而且当初始化
数据库服务器时没有将 ANSIOWNER 环境变量设置为 1 ,则数据库服务器会
以大写字母存储 owner 名称。
在本手册中提供了语句描述以帮助您成功输入 SQL 语句。语句描述包括以下信
息:

用来说明语句作用的简短介绍

用来显示如何正确输入语句的语法图

用来说明语法图中的每个输入参数的语法表

用法规则,通常带有说明这些规则的示例

GBase 8s SQL 指南:语法
南大通用数据技术股份有限公司 9
对于某些语句,只为单独的子句提供了这些信息。
大多数语句描述的最后都带有本手册和其它手册中的相关信息的引用。
SQL 语句 提供了每个 SQL 语句的描述,是以字母顺序排列的。SPL 语句 使用
相同格式描述了每个 SPL 语句。
输入 SQL 语句的主要帮助包括:

语法图和语法表的组合

出现在用法规则中的语法示例

对相关信息的引用
使用语法图和语法表
在您尝试使用本章中的语法图之前,先阅读介绍中的语法图一节会有所帮助。本
节是理解语法图的关键,并说明了可出现在语法图中的元素和这些元素互连的路
径。本节还包括说明典型语法图元素的示例。示例图后面的叙述显示了如何阅读
该图以便成功输入语句。
语法图可以参考其他的语法部分或可以指定不同的限制。如果您正在使用应用程
序接口(例如:ESQL/C),那么只有客户端应用和数据库服务器都支持的 SQL
语法规则是有效的。
当语法图包括输入规范(如标识、表达式、文件名、主机变量或其它项)时,语
法图后跟着一个表,该表描述如何输入该项而不生成错误。每个语法表包含四
列:

Element 列列出了语法图中的每个变量项。

Description 列简述了该项并标识缺省值(如果该项有缺省值的话)。

Restrictions 列总结了该项的限制,例如值的可接受范围。(对于某些语
法图,无法概括总结的限制显示在 Usage 注解中而不是在此列中。)

Syntax 列指向给出该项的详细语法的 SQL 段。对于某些项(如主变量名
称、路径名或文字字符),未提供页码索引。

GBase 8s SQL 指南:语法
南大通用数据技术股份有限公司 10
这些图表通常提供给定的 SQL 语句中有效内容的直观注解,但对于某些语句,
语法元素之间的相关性或限制仅在用法部分中的文本中作出标识。
使用示例
要理解某个语句的主要语法图和子图,请研究在每个语句的用法规则中显示的语
法示例。这些示例有两个作用:

显示如何使用语句或子句完成特定任务

显示如何以具体的方法使用语句或其子句的语法
提示: 理解语法图的一个有效方法是,查找语法示例并将其与语法图中的关键字
和参数作比较。通过将示例的具体元素映射到语法图的抽象元素,可以有效地理
解和使用语法图。
对于在本手册示例中使用的约定的说明,请参阅介绍中的语法图的章节。
这些代码示例是用以说明有效语法的程序分段,而不是完整的 SQL 程序。在一
些示例代码中,省略号( . . . )表示剩下的代码已省略。但为了节省空间,在程
序分段的开头和结尾不显示省略号。
使用相关信息
为了帮助理解 SQL 语句描述中的概念和项,请查看每个语句结尾处的“相关信
息”部分。
本部分指向本手册和其它手册中的相关信息,以帮助您理解讨论中的语句。本部
分提供以下某些或全部信息。

相关语句的名称,这些相关语句可能包含词语中主题的更完整讨论

提供此语句中主题的展开讨论的其它手册的标题
提示: 如果您对 SQL 没有广泛的知识和经验,GBase 8s SQL 教程指南会给予您
所需的基本 SQL 知识,供您理解并使用本手册中的语句描述。

................... - 786 -

CentOS/RHEL 7.2 或Kylin-Server-20200711 及之后版本的操作系统中,systemd-logind
服务引入一个新特性——RemoveIPC,表现为:用户登录后创建的文件,在logout 后会被自
动删除。该特性由/etc/systemd/logind.conf 参数文件中RemoveIPC 选项来控制。详细信息请
执行man logind.conf(5)命令查看。
当使用默认值(即RemoveIPC=yes)的情况,当用户退出时,操作系统会crash 掉使用
了Shared Memory Segment (SHM) or Semaphores (SEM)的应用程序,导致GBase 8c 数据库
进程将会被中断。
因此在CentOS 7.2+、RHEL 7.2+或Kylin-Server-20200711+操作系统环境中,需检查
RemoveIPC 参数,避免发生此类问题。操作步骤如下:
步骤1 查看RemoveIPC 参数值是否为yes
[root@gbase8c ~]# loginctl show-session | grep RemoveIPC
[root@gbase8c ~]# systemctl show systemd-logind | grep RemoveIPC
如果为yes,则需要修改;如果为no,则无需继续执行后续步骤。
步骤2 修改RemoveIPC 参数值。需要在集群每个节点服务器上执行以下操作:

修改/etc/systemd/logind.conf 配置文件
[root@gbase8c ~]# vim /etc/systemd/logind.conf
将RemoveIPC 参数值设置为no,键入“:wq”保存并退出。

修改/usr/lib/systemd/system/systemd-logind.service 配置文件,将RemoveIPC 参数值设置
为no。
[root@gbase8c ~]# vim /usr/lib/systemd/system/systemd-logind.service
将RemoveIPC 参数值设置为no,键入“:wq”保存并退出。
步骤3 重新加载配置文件,执行以下命令:

GBase 8c V5 安装部署手册(主备式)
南大通用数据技术股份有限公司
33
[root@gbase8c ~]# systemctl daemon-reload
[root@gbase8c ~]# systemctl restart systemd-logind
再次检查是否生效即可。