幾個PostgreSQL資料庫操作總結

來源:互聯網
上載者:User

標籤:使用   os   io   資料   ar   art   cti   amp   

建立表

文法:如下

create table     table_name     (column_name         column_type(parametes)options,…);

注意:

⑴     SQL語句對大小寫不敏感

⑵     通常忽略空白—應該使用空白使SQL命令具有更好的可讀性。

⑶     表名和欄位不能和SQL的保留字相同

一下樣本師範如何建立表cd_collection:

create      table         cd_collection

(

id      int    not null,

title  varchar(50)      not null,

artist        varchar(50)      not null,

year          varchar(50)      not null,

rating       varchar(50)      not null

);

向表中插入資料

文法:如下

按資料庫表中列的順序插入

insert        into           table_name     values(‘value1’,        ‘value2’,   ‘value3’,   …);

不按資料庫表中列的順序出入(特殊插入)

insert        into           table_name     values(column1,       column4) values (‘value1’,       ‘value2’);

在一條insert語句中填入多行資料,使用如下文法

insert        into           table_name     values(‘value1’,        ‘value2’), (‘value3’, ‘value4’);

Notice:     value1 and value2 inserted into first column, value3 and value4 inserted into second column.

insert        into          cd_collection   values(9, ‘Nevermind’, ‘ ’Nirvana’, ‘1991’, ’ ’NULL);

如果處於中間位置的列為空白,則需要在insert  語句中顯式聲明為NULL.

從資料庫中檢索資料

select       column1, column2, column3   from          table_name     where search_criteria;

column1, column2, column3   表明需要返回的列的列名。

如果需要返回所有列,則可以使用萬用字元*來顯示 匹配搜尋條件的所有列。

select * from cd_collection;

select title from cd_collection;

select title, year from cd_collection;

select (title||” (“||year||”) ”) as titleyear from cd_collection;

select * from   cd_collection   where       rating =5;

select * from cd_collection where rating =5 and          year!=2003;

啟動postmaster:

$postmaster –D /usr/local/pgsql/data &

在PostgreSQL中建立資料庫

在shell提示符下發出如下命令:

#su – postgres

$createdb         database          #在不登陸和不使用psql的情況下建立資料庫

#create    database          testdatabase;           #在psql裡建立資料庫

$psql         testdatabase;           #啟動psql程式並連結到testdatabase資料庫

在命令列下切換資料庫

$\c database_name

在postgres使用者下建立允許訪問資料庫的使用者或建立多個新的資料庫使用者

$createuser     pgtest (with password)

y

y

用postgres使用者在命令列建立資料庫使用者

psql           testdatabase

create user pgtest(with password);

刪除資料庫使用者

$dropuser         pgtest

也可以使用psql登陸到資料庫,然後使用drop user 命令

$psql       testdatabase

testdatabase=#       drop user pgtest;

testdatabase=#\q

在PostgreSQL中授予和撤銷特權:GRANT  和        REVOKE語句實現

以下是GRANT語句的文法:

GRANT     what_to_grant         ON   where_to_grant      TO    user_name;

下面的語句在資料庫testdatabase上授予使用者pgtest所有的特權

GRANT     ALL   ON   testdatabase TO      pgtest;

撤銷特權

REVOKE   ALL ON testdatabase    FROM       pgtest;

PostgreSQL命令列用戶端

psql可以接受若干參數

-h      hostname         連結遠程主機hostname(如果資料庫伺服器不位於本地系統上)

-p n                              指定n為用戶端應當串連到的連接埠號碼。注意這裡是小寫p

-U username             以使用者username串連資料庫

-W                                在連結資料庫後提示輸入口令。

-?                                  顯示協助訊息

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.