PostgreSQL 的命令列psql和資料互動

2021-09-12 03:51:15 字數 1188 閱讀 9918

一、psql

1、一旦執行,psql 將通過包含我們當前連線到的資料庫名並跟隨「=>」符號的提示符提示輸入命令。對於在當前資料

庫擁有全部許可權的使用者,提示符被替換為「=#".

2、psql 的命令分為兩種不同的型別:sql 命令:我們可以輸入任何 postgresql 支援的 sql 語句給 psql,然後它將執行它。內部命令:有一些 psql 命令用於執行 sql 不直接執行的命令例如列出存在的表和執行指令碼。所有的內部命令都由一條反斜槓開始切不能被拆分成多行。

3、需要通過乙個分號來告訴 psql 我們已經完成一條可能被拆分成多行的長 sql 命令。注意分號不是一條 sql 命

令必須的部分,它只是用於告訴 psql 我們已經完成輸入了。

4、收集一組 psql 命令(包括 sql 和內部命令)到乙個檔案並把它當做乙個簡單的指令碼使用。內部命令「\i」將從乙個檔案中讀取一組 psql 命令(一定要用unix方式的路徑:即用左斜槓的方式)。如下:

\i d:/company/select.sql;
二、資料互動

1、使用 insert 語句往 customer 表裡頭新增資料,按照建表時列的順序排列插入的值。要插入數字,則直接寫數字。要插入字串,則把字串包含在單引號中。為了在插入的字串裡頭包含單引號,我們必須在單引號之前新增乙個反斜槓字元(\)。如果我們還需要插入乙個反斜槓字元,那麼我們需要寫一對反斜槓,就像這樣「\\」。

2、避免在插入資料的時候為 serial 型別的資料提供數值。

3、使用:setval('序列生成器名', 新的值);的方式給序列更新值。如:

select setval('customer_customer_id_seq', 19);
4、命令是truncate,從乙個表中刪除所有資料,它沒有辦法恢復被刪除的資料。使用這個命令需要非常小心,只有當你非常確定要永久刪除表中的資料才能使用。從某些方面說,它非常類似於刪除表並重建它,除了它更容易操作且不會重置序列生成器。使用如下:

bp******=# truncate table tcust;

truncate table

bp******=# select count(*) from tcust;

count

-------

0(1 row)

bp******=#

PostgreSQL命令列常用的命令

登入資料庫 psql h localhost u username d dbname c dbname 切換資料庫 相當於 mysql 的use dbname l 列舉資料庫,相當於 mysql 的show databases dt 列舉表,相當於 show tables d tblname 檢視表...

PostgreSQL命令列常用命令psql

注意 除sql語句外的命令大小寫敏感!sql語句要加上分號結束!如果表名時敏感詞 如user等,查詢表時要在user上新增雙引號.1 以dbuser的身份連線資料庫exampledb su dbuser password last login wed mar 1 11 52 07 cst 2017 ...

postgresql 常用命令行操作

su dbuser password last login wed mar 1 11 52 07 cst 2017 on pts dbuser master psql d exampledbpostgres lpostgres create database exampledb owner dbus...