原文链接:www.gbase.cn/community/p…
更多精彩内容尽在南大通用GBase技术社区,南大通用致力于成为用户最信赖的数据库产品供应商。
本文系统性地梳理与解析 GBase 8c 附带的交互式客户端工具 gsql 中,一系列非 SQL 标准的元命令(Meta-Commands)的功能、语法。
这些命令虽未被纳入 SQL 规范,但其能极大地提升数据库的管理效率、简化开发调试流程,因而在实际运维与开发工作中扮演着不可或缺的角色。gsql 的元命令集作为其交互式界面的核心组件,极大地增强了数据库的可操作性与管理效率。熟练掌握这些命令,对于提升日常的数据查询、对象管理及系统调试工作流至关重要。
以下是相关参数及参数说明。
- \h(\help) [NAME]
给出指定 SQL 语句的语法帮助。 - \copy { table [ ( column_list ) ] | ( query ) } { from | to } { filename | stdin | stdout | pstdin | pstdout } [ with ] [ binary ] [ oids ] [ delimiter [ as ] 'character' ] [ null [ as ] 'string' ] [ CSV [ header ] [ quote [ as ] 'character' ] [ escape [ as ] 'character' ]
在任何 psql 客户端登录数据库成功后可以执行导入导出数据, 这是一个运行 SQL COPY 命令的操作,但不是读取或写入指定文件的服务器,而是读取或写入文件,并在服务器和本地文件系统之间路由数据。 这意味着文件的可访问性和权限是本地用户的权限,而不是服务器的权限,并且不需要数据库初始化用户权限。 - \echo [STRING]
把字符串写到标准输出。 - \i FILE
从文件 FILE 中读取内容,并将其当作输入,执行查询。 - \o [FILE]
把所有的查询结果发送到文件里。 - \qecho [STRING]
把字符串写到查询结果输出流里。 - \d[S+]
列出当前 search_path 中模式下所有的表、视图和序列。当 search_path 中不同模式存在同名对象时,只显示 search_path 中位置靠前模式下的同名对象。 - \d[S+] NAME
列出指定表、视图和索引的结构。 - \d+ [PATTERN]
列出所有表、视图和索引。 - \da[S] [PATTERN]
列出所有可用的聚集函数以及它们操作的数据类型和返回值类型。 - \db[+] [PATTERN]
列出所有可用的表空间。 - \dC[+] [PATTERN]
列出所有类型转换。 - \ddp [PATTERN]
显示所有默认的使用权限。 - \det[+] [PATTERN]
列出所有的外部表。 - \des[+] [PATTERN]
列出所有的外部服务器。 - \deu[+] [PATTERN]
列出用户映射信息。 - \dew[+] [PATTERN]
列出封装的外部数据。 - \df[antw][S+] [PATTERN]
列出所有可用函数以及它们的参数和返回的数据类型。a 代表聚集函数,n 代表普通函数,t 代表触发器,w 代表窗口函数。 - \dF[+] [PATTERN]
列出所有的文本搜索配置信息。 - \dFd[+] [PATTERN]
列出所有的文本搜索字典。 - \dFp[+] [PATTERN]
列出所有的文本搜索分析器。 - \dFt[+] [PATTERN]
列出所有的文本搜索模板。 - \dg[+] [PATTERN]
列出所有数据库角色。
说明:
因为用户和群组的概念被统一为角色,所以这个命令等价于\du。为了和以前兼容,所以保留两个命令。 - \dl
\lo_list 的别名,显示一个大对象的列表。 - \dm[S+] [PATTERN]
列出物化视图。 - \dn[S+] [PATTERN]
列出所有的模式(名称空间)。 - \do[S] [PATTERN]
列出所有可用的操作符以及它们的操作数和返回的数据类型。 - \dO[S+] [PATTERN]
列出排序规则。 - \dp [PATTERN]
列出一列可用的表、视图以及相关的权限信息。 - \dT[S+] [PATTERN]
列出所有的数据类型。 - \du[+] [PATTERN]
列出所有数据库角色。
说明:
因为用户和群组的概念被统一为角色,所以这个命令等价于\dg。为了和以前兼容,所以保留两个命令。 - \dE[S+] [PATTERN]
\di[S+] [PATTERN]
\ds[S+] [PATTERN]
\dt[S+] [PATTERN]
\dv[S+] [PATTERN]
这一组命令,字母 E、i、s、t 和 v 分别代表着外部表、索引、序列、表和视图。可以以任意顺序指定其中一个或者它们的组合来列出这些对象。例如:\dit 列出所有的索引和表。在命令名称后面追加 +,则每一个对象的物理尺寸以及相关的描述也会被列出。 - \dx[+] [PATTERN]
列出安装数据库的扩展信息。 - \l[+]
列出服务器上所有数据库的名称、所有者、字符集编码以及使用权限。 - \sf[+] FUNCNAME
显示函数的定义。
说明:
对于带圆括号的函数名,需要在函数名两端添加双引号,并且在双引号后面加上参数类型列表。参数类型列表两端添加圆括号。 - \z [PATTERN]
列出数据库中所有表、视图和序列以及它们相关的访问特权。 - \c[onnect] [DBNAME|- USER|- HOST|- PORT|-]
连接到一个新的数据库(当前数据库为 postgres)。当数据库名称长度超过 63 个字节时,默认前 63 个字节有效,连接到前 63 个字节对应的数据库,但是 gsql 的命令提示符中显示的数据库对象名仍为截断前的名称。
说明:
重新建立连接时,如果切换数据库登录用户,将可能会出现交互式输入,要求输入新用户的连接密码。 - \encoding [ENCODING]
设置客户端字符编码格式。 - \conninfo
输出当前连接的数据库的信息。 - \timing [on|off]
以毫秒为单位显示每条 SQL 语句的执行时间(不包括屏显打印时间)。 - \q
退出 gsql 程序。
在一个脚本文件里,只在脚本终止的时候执行。
原文链接:www.gbase.cn/community/p…
更多精彩内容尽在南大通用GBase技术社区,南大通用致力于成为用户最信赖的数据库产品供应商。