PostgreSQL基本命令
PostgreSQL:普通张贴物
PostgreSQL是一种关系型数据库管理系统。
PostgreSQL(Postgresキューエル)…这样读,好像也叫Postgres。
似乎不仅适用于UNIX类操作系统(如macOS等),还适用于Windows。
可以免费使用,无论用途如何(据说也称为BSD许可证)。
据说在开源许可证中使用的是非常宽松的许可证。
据说即使对功能进行了改变或添加,也没有公开的义务。(据说)
主要命令
・バージョンの確認
$ postgres --version
$ postmaster --version
$ pg_ctl --version
接続したPostgreSQLのバージョンを確認する方法
$ psql -h localhost template1
・ヘルプを表示
$ psql --help
# \?
# \h
・データベースに入る
$ psql <DB_NAME>
・ユーザーを指定してデータベースに入る
$ psql -U <USER_NAME> <DB_NAME>
・データベースから出る
# \q
・データベース一覧表示
$ psql -l
# \l
・データベースの切り替え
# \c <DB_NAME>
# \connect <DB_NAME>
・データベースを削除
# drop database <DATABASE_NAME>;
桌子
・テーブル一覧表示(viewやsequenceも含む)
# \d
・テーブル一覧表示
# \dt
・テーブルのスキーマの詳細を表示
# \d <TABLE_NAME>
・テーブルのアクセス権限表示
# \z <TABLE_NAME>
・viewの一覧を表示
# \dv
・viewの定義を表示
# select definition from pg_views where viewname = '<VIEW_NAME>';
・テーブル名変更
# alter table <CURRENT_DB_NAME> rename to <NEW_DB_NAME>;
・テーブルを削除
# drop table <TABLE_NAME>;
用戶權限 (User permission)
・現在のユーザー(Role)を表示
# select current_user;
・ユーザー(Role)の一覧を表示
# \du
・ユーザー情報一覧を表示
# select * from pg_user;
・ユーザー (Role)に権限を付与
# grant select, insert, update, delete on <TABLE_NAME> to <USER_NAME>;
・ユーザー (Role)に権限を剥奪
# revoke select, insert, update, delete on <TABLE_NAME> from <USER_NAME>;
・ユーザーの切り替え
# \connect - <USER_NAME>
・スーパーユーザーへ変更
# alter role <USER_NAME> with creatural superuser;
・スーパーユーザー権限剥奪
# alter role <USER_NAME> with creatural nosuperuser;
可以选择性地编写Chinese
・スキーマ作成
# create schema <schema_name>;
・スキーマを確認
# select current_schema;
・スキーマ一覧
# \dn
・スキーマ変更
# set search_path to <schema_name>;