自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PostgreSQL數(shù)據(jù)庫管理入門之psql工具篇

數(shù)據(jù)庫 PostgreSQL
數(shù)據(jù)庫管理在數(shù)據(jù)庫工作中是非常重要的環(huán)節(jié)之一,本文主要為大家介紹PostgreSQL數(shù)據(jù)庫管理入門之psql工具篇,對于那些剛剛入門學習數(shù)據(jù)庫管理知識的初學者,本文將是有很高的參考價值。

導讀:psql是PostgreSQL自身提供的一款強大的查詢和腳本工具,本文將向讀者介紹該工具的入門知識。


▲PostgreSQL數(shù)據(jù)庫標志

  一、關于psql

  psql是PostgreSQL自身提供的一款查詢工具,也就是說,無論哪種操作系統(tǒng)平臺下,該工具都可用,并且使用方法都是一致的。所以,當我們開發(fā)可移植的應用軟件和技術的時候,該工具是一個理想的選擇。

  Psql有兩大功能,除了作為交互查詢工具使用之外,psql還是一款理想的腳本工具。

  二、使用方法

  本文中,我們假設psql有權訪問PostgreSQL服務器,所有連接參數(shù)都是缺省的,但是現(xiàn)實中并非總是這樣。我們當前的連接參數(shù)如下所示:

psql –h hostname –p 5432 –d dbname –U username –W
  下面開始介紹有關的具體操作。psql 最簡單的用法就是執(zhí)行單個SQL命令,并輸出命令結果,如下所示:

$ psql -c "SELECT current_time"
timetz
-----------------
20:48:62.384+01
(1 row)
  帶 -c的命令表示為非交互式的。如果您想一次執(zhí)行多條命令的話,可以將這些命令寫入一個文本文件中,然后通過-f 選項來執(zhí)行它們。下面給出的命令將加載一組命令:

$ psql –f examples.sql
  如果執(zhí)行成功,會產生如下所示的輸出:

SET
SET
SET
SET
SET
SET
CREATE SCHEMA
SET
SET
SET
DROP TABLE
CREATE TABLE
DROP TABLE
CREATE TABLE
  腳本examples.sql非常類似于PostgreSQL備份工具所建立的轉儲文件,并且它們的類型與結果也是非常相通的。當上面的命令成功執(zhí)行的時候,PostgreSQL會用命令的名稱生成命令標簽,就像上面看到的輸出結果那樣。

  上面的用法類似于批處理方式,實際上psql還可以用于交互方式,并且該方式是默認的工作方式,無需任何選項,例如:

$ psql
postgres=#
  下面我們開始練習我們的***條交互式命令,像下面這樣:

postgres=# help
  然后,我們就可以輸入SQL或其他的命令了。當我們要退出交互模式的時候,可以使用如下所示的命令:

postgres=# \quit
  注意,這里您不能輸入quit,也不能輸入\exit或者其他選項,而只能是\quit或者\q,后者是前者的簡寫形式。

  三、命令類型

  psql允許使用兩種類型的命令:

  psql "meta-commands"

  SQL

  meta-command 是用于psql客戶端,而SQL則發(fā)給數(shù)據(jù)庫服務器。meta-command的一個例子是\q,它命令客戶端斷開連接。所有以反斜線符號\開頭的命令都被作為meta-command。

  如果一條命令不是meta-command,那么它就是SQL命令。該命令將一直讀取SQL,直到遇見分號為止,所以我們可以將一條較長的SQL命令分到多行中,只要您覺得方便即可。

  命令help是***的例外。help命令有兩種形式,如下所示:

  \? 提供psql meta - commands命令的幫助信息

  \h 提供特定SQL命令的幫助信息

  下面舉例進行說明:

postgres=# \h DELETE
Command: DELETE
Description: delete rows of a table
Syntax:
DELETE FROM [ ONLY ] table [ [ AS ] alias ]
[ USING usinglist ]
[ WHERE condition | WHERE CURRENT OF cursor_name ]
[ RETURNING * | output_expression [ AS output_name ] [,]]
  經驗表明,這是一種探索和記憶選項和語法好方法。

  四、注釋方法

  有兩種常用的注釋方法,即單行注釋和多行注釋,下面分別加以解釋。單行注釋用雙破折號表示:

  -- 這里是單行注釋
  而多行注釋與Java語法類似,如下:

/**//*
*多行注釋
*/
  五、其它功能

  開始的時候,您對于psql的反斜扛命令可能不太適應,但是用一段時間就好了,您會發(fā)現(xiàn),該軟件是非常強大的。psql是PostgreSQL最神奇的部分之一,用過其他工具后您會發(fā)現(xiàn),它對于數(shù)據(jù)庫管理任務來說,作用非凡。

  當然,我們可回滾早先的命令歷史記錄功能。此外,tab補齊功能也是非常有幫助的,因為只要按下TAB鍵,程序就會幫我們完成后面的語法部分。該功能對于對象名稱也同樣有效,所以我們只輸入前幾個字母,然后按Tab鍵所有可能的選擇都會顯示出來,這樣只要輸入足夠多的字符,對象名稱就會變成***選擇,這時敲一下Tab鍵就搞定了。下面是psql其它的有用的特性:

  通知功能

  輸出格式化

  使用\timing命令計算執(zhí)行時間

  輸入、輸出和編輯命令

  自動起動執(zhí)行文件:.psqlrc

  可替代的參數(shù)(變量)

  訪問OS命令行

  六、小結

  從上文中可以總結出psql功能性是很強大的,學習數(shù)據(jù)庫管理知識就要首先了解psql,希望上文中涉及到的能夠幫助到大家。

【編輯推薦】

  1. 管理員必讀10個重要MySQL客戶啟動選項
  2. 講解Oracle數(shù)據(jù)庫管理員的維護工作
  3. MySQL數(shù)據(jù)庫管理常用命令
  4. 未來趨勢:數(shù)據(jù)庫監(jiān)測加入安全事件管理
責任編輯:迎迎 來源: it168
點贊
收藏

51CTO技術棧公眾號