2010-07-19 63 views

回答

12

完全未經測試,但由於Postgres SQL支持列級權限,因此它看起來可能如此。 http://www.postgresql.org/docs/current/static/sql-grant.html

這是行不通的嗎?

GRANT SELECT (col1, col2), INSERT(col1, col2), UPDATE (col1) ON mytable TO userX; 
+11

+1,但是我會在引用的頁面中引起注意:「如果用戶擁有特定列或其整個表的特權,則用戶可以在列上執行SELECT,INSERT等。在表級別授予特權然後撤銷一列的權限將不會達到您希望的水平:表級授予不受列級別操作的影響。「您的示例涵蓋了這一點,因爲它明確授予所有權限,但我相信可能很容易錯過這一點。 – 2010-07-19 14:41:29