PostgreSQL学习----命令或问题小结
PostgreSQL学习--命令或问题小结
小序
接触PostgreSQL也有好长时间了,知识不总结梳理,似乎总不是自己的,继续努力吧少年!以此记录我的软件工艺之路!
1,查看模式搜索路径
SHOW search_path;
run,如:
search_path
----------------
"$user",public
(1 row)
其中$user,表示一个和当前用户同名的模式,如果这样的模式不存在,则该模式会被忽略。
2,查看当前用户信息
select CURRENT_USER;
-- or --
select * from pg_user where usename = CURRENT_USER;
3,查看所有用户
\du
run,如:
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------+-----------
geodb | Superuser, Create DB, Replication | {}
postgres | Superuser, Create role, Create DB, Replication | {}
xiwang | Superuser, Create DB, Replication | {}
4,查看所有数据库
\l
列出服务器上所有数据库的名字和它们的所有者以及字符集编码。在命令名称后面加一个 "+" 还可以看到对数据库的描述。如:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
blogdb | xiwang | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =CTc/xiwang +
| | | | | xiwang=CTc/xiwang
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
5查看但前用户可以看到的表,视图,索引或者序
\d
如:
List of relations
Schema | Name | Type | Owner
--------+-----------------+----------+--------
xiwang | articles | table | xiwang
xiwang | articles_id_seq | sequence | xiwang
xiwang | comments | table | xiwang
xiwang | messages_id_seq | sequence | xiwang
xiwang | users | table | xiwang
xiwang | users_id_seq | sequence | xiwang
6查看表结构
\d tablename
查看更多信息:
\d+ tablename
7确认某一张表(或视图)是否在指定的模式下,且当前用户是否能够访问到
SELECT EXISTS (
SELECT 1
FROM information_schema.tables
WHERE table_schema = 'schema_name'
AND table_name = 'table_name'
);
8查看所有数据类型
\dt [pattern]
列出所有数据类型或只显示那些匹配 pattern的。这条命令的 \dT+ 形式显示更多信息
如:
\dt xiwang.*
可以查看名为xiwang的模式下所有的数据类型。
9保存历史输出
\s [ filename ]
将命令行历史打印出或是存放到 filename。 如果省略 filename, 历史将输出到标准输出。这个选项只有在 psql 配置成使用 GNU Readline 库后才生效。
更多资料
更多更详细的资料,更查看手册文档。