在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 數(shù)據(jù)庫/ PostgreSQL權(quán)限
PostgreSQL LIKE條件
PostgreSQL截斷表(TRUNCATE TABLE語句)
C/C++連接PostgreSQL數(shù)據(jù)庫
PostgreSQL別名
PostgreSQL日期和時間函數(shù)
PostgreSQL NOT IN條件
PostgreSQL歷史
PostgreSQL事務(wù)
PostgreSQL AND & OR條件
PostgreSQL NULL值
PostgreSQL教程
PostgreSQL更新數(shù)據(jù)(UPDATE語句)
PostgreSQL ORDER BY子句
PostgreSQL分組(GROUP BY子句)
PostgreSQL數(shù)據(jù)類型
PostgreSQL特點(diǎn)
PostgreSQL刪除數(shù)據(jù)庫
PostgreSQL UNIONS子句
PostgreSQL AND條件
PostgreSQL索引
PostgreSQL刪除表
Perl連接PostgreSQL數(shù)據(jù)庫
PostgreSQL視圖
PostgreSQL修改表(ALTER TABLE語句)
PostgreSQL全外連接
PostgreSQL命令語法大全
PostgreSQL查詢數(shù)據(jù)(SELECT語句)
PostgreSQL自動遞增
PostgreSQL左外連接
PostgreSQL創(chuàng)建表
PostgreSQL模式(架構(gòu))
PostgreSQL觸發(fā)器
PostgreSQL安裝(Windows)
PostgreSQL NOT條件
PostgreSQL Having子句
PostgreSQL函數(shù)(存儲過程)
Java連接PostgreSQL數(shù)據(jù)庫
PostgreSQL權(quán)限
PostgreSQL OR條件
PostgreSQL創(chuàng)建數(shù)據(jù)庫
PostgreSQL BETWEEN條件
PostgreSQL IN條件
Python連接PostgreSQL數(shù)據(jù)庫
PostgreSQL刪除數(shù)據(jù)(DELETE語句)
PostgreSQL子查詢
PostgreSQL右外連接
PostgreSQL插入數(shù)據(jù)(INSERT語句)
PostgreSQL是什么?
PostgreSQL連接(內(nèi)連接)
PHP連接PostgreSQL數(shù)據(jù)庫
PostgreSQL條件查詢
PostgreSQL鎖
PostgreSQL跨連接(CROSS JOIN)

PostgreSQL權(quán)限

在數(shù)據(jù)庫中創(chuàng)建對象時,都會為其分配所有者。 所有者通常是執(zhí)行創(chuàng)建語句的用戶。 對于大多數(shù)類型的對象,初始狀態(tài)是只有所有者(或超級用戶)可以修改或刪除對象。 要允許其他角色或用戶使用它,必須授予權(quán)限或權(quán)限。

PostgreSQL中的不同類型的權(quán)限是:

  • SELECT,INSERT,UPDATE,DELETE,TRUNCATE,REFERENCES,TRIGGER,CREATE,CONNECT,TEMPORARY,EXECUTEUSAGE。

根據(jù)對象的類型(表,函數(shù)等),權(quán)限將應(yīng)用于對象。 要為用戶分配權(quán)限,使用GRANT命令。

GRANT的語法

GRANT命令的基本語法如下:

GRANT privilege [, ...]
ON object [, ...]
TO { PUBLIC | GROUP group | username }
  • privilege值可以是:SELECTINSERT,UPDATEDELETE,RULE,ALL。
  • object:要向其授予訪問權(quán)限的對象的名稱。 可能的對象是:表,視圖,序列
  • PUBLIC:表示所有用戶的簡短形式。
  • GROUP group:授予權(quán)限的組。
  • username:授予權(quán)限的用戶的名稱。 PUBLIC是表示所有用戶的簡短形式。

REVOKE的語法

REVOKE命令的基本語法如下:

REVOKE privilege [, ...]
ON object [, ...]
FROM { PUBLIC | GROUP groupname | username }
  • privilege值可以是:SELECT,INSERTUPDATE,DELETE,RULE,ALL。
  • object: 授予訪問權(quán)限的對象的名稱。 可能的對象是:表,視圖,序列。
  • PUBLIC:表示所有用戶的簡短形式。
  • GROUP group:授予權(quán)限的組。
  • username:授予權(quán)限的用戶的名稱。 PUBLIC是表示所有用戶的簡短形式。

示例

如要理解權(quán)限,我們先創(chuàng)建一個USER,如下所示:

yiibai_db=# CREATE USER manisha WITH PASSWORD 'password';
CREATE ROLE

語句CREATE ROLE 表示創(chuàng)建了一個用戶名為manisha

考慮 COMPANY 表有以下記錄:

yiibai_db# select * from COMPANY;
 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Allen |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000
(7 rows)

接下來,讓我們給予用戶“manisha”在表COMPANY上授予所有權(quán)限,如下所示:

yiibai_db=# GRANT ALL ON COMPANY TO manisha;
GRANT

語句GRANT指示所有在COMPANY表上的權(quán)限都分配給用戶“manisha”。

接下來,讓我們從用戶“manisha”中撤銷權(quán)限,如下所示:

yiibai_db=# REVOKE ALL ON COMPANY FROM manisha;
REVOKE

REVOKE表示從用戶“manisha”撤消所有權(quán)限。甚至可以刪除用戶,如下所示:

yiibai_db=# DROP USER manisha;
DROP ROLE

DROP ROLE表示從數(shù)據(jù)庫中刪除用戶“manisha”。