PostgreSQL 提供以反斜线 / 打头的命令,可以方便地列出数据库信息,反斜线命令也可翻译为元子命令 (meta command)。
例一: 显示表空间列表
1 2 3 4 5 6 7 8 9 10 11
postgres= List of tablespaces Name | Owner | Location -------------------+----------+------------------------------------------- pg_default | postgres | pg_global | postgres | tbs_cac_charge | postgres | /opt/pgdata/pg94/pg_tbs/tbs_cac_charge tbs_francs | postgres | /opt/pgdata/pg94/pg_tbs/tbs_francs tbs_norland | postgres | /opt/pgdata/pg94/pg_tbs/tbs_norland tbs_skypcsuit_log | postgres | /opt/pgdata/pg94/pg_tbs/tbs_skypcsuit_log (6 rows)
例二: 显示 Table 列表
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
francs=> /dt List of relations Schema | Name | Type | Owner --------+----------------------------+-------+-------- francs | db_list | table | francs francs | net_list | table | francs francs | tbl_log_pc_app_bag_install | table | francs francs | tbl_store | table | francs francs | test_1 | table | francs francs | test_2 | table | francs francs | test_cha | table | francs francs | test_search1 | table | francs francs | user1 | table | francs francs | users_normal | table | francs (10 rows)
备注: 反斜线 命令可以显示数据库表,索引,序列等多项信息,不一一举例,那么反斜线命令底层调用的是哪些 SQL 脚本呢?可以通过以下方法得到。
获取元子命令的 SQL 脚本
psql
使用 -E 选项可以获取元子命令的 SQL 脚本,如下:
备注: psql
的 -E 参数显示出了 “/db” 元子命令的 SQL 脚本,如有兴趣研究各种反斜线命令脚本,那么对 PostgreSQL 系统表,视图的熟悉会更进一步。尽管这篇 blog 仅列出一项简单功能,方便有需要的朋友查阅。
参考
1 2 3 4
-E Echo the actual queries generated by d and other backslash commands. You can use this to study psql's internal operations. This is equivalent to setting the variable ECHO_HIDDEN from within psql.
原创文章,作者:bd101bd101,如若转载,请注明出处:https://blog.ytso.com/239619.html