postgresql
PostgreSQL
- 主にコマンドのまとめ
端末
DB接続
$ psql
オプション
-d
- DB名を指定できる
- デフォルトはユーザ名と同じDB名
-U
- ユーザ名を指定できる
- デフォルトはログインユーザ名
psql
DB一覧
# \l
テーブル一覧
# \dt
ファイル実行
# psql -d {データベース名} -U {ユーザ名} -f {ファイル名} $ psql -d command_test -U commander -f test.sql
テンプレ
- 乱雑にまとめただけなので、いずれ整理したい
BETWEEN x AND y INSERT INTO [[TABLE]] ([[column1]], [[column2]], [[column3]]) VALUES ([[value1]], [[value2]], [[value3]]) ; UPDATE [[TABLE]] SET [[column1]] = [[value1]], [[column2]] = [[value2]] WHERE [[column3]] = [[value3]] AND [[column4]] = [[value4]] ; DELETE FROM [[TABLE]] WHERE [[column1]] = [[value1]] AND [[column2]] = [[value2]] ;
Tips
シーケンスがおかしい
-- 最大キー値の確認 SELECT MAX(id) FROM TABLE; -- 採番の値の確認 SELECT NEXTVAL('table_id_seq'); -- 更新 SELECT SETVAL('table_id_seq', (SELECT MAX(id) FROM TABLE));
全テーブルの削除
- スキーマが複数ある場合は、各スキーマで実行すればよさそう
DROP schema public cascade ; CREATE schema public ;
参考
- How can I drop all the tables in a PostgreSQL database? - Stack Overflow
- Stack Overflow
- 2021/06/14
- PostgreSQL ですべてのテーブルを削除する方法 - Qiita
- Qiita
- 2021/06/14
- PostgreSQLコマンドチートシート
- Qiita
- 2021/04/05
1)
『シーケンス操作関数』, PostgreSQL 9.1.5文書, https://www.postgresql.jp/document/9.1/html/functions-sequence.html, 2021-09-13
2)
『How to reset postgres' primary key sequence when it falls out of sync?』, Stack Overflow, https://stackoverflow.com/questions/244243/how-to-reset-postgres-primary-key-sequence-when-it-falls-out-of-sync, 2021-09-13
3)
『PostgreSQLでINSERT時に自動採番の主キーが重複してエラーが出る場合の対処法』, ぺけみさお, https://www.xmisao.com/2014/06/07/duplicate-key-value-violates-unique-constant-primary-key-on-postgresql.html, 2021-09-13
postgresql.txt · 最終更新: 2021/09/13 17:16 by 127.0.0.1