Schema

為什麼架構所有者不能創建新表?

  • July 23, 2013

我有一個名為 STANMAN 的數據庫使用者,它擁有 STANMAN 模式。當我嘗試將表創建為 STANMAN 時,它說 STANMAN 的權限不足。架構所有者怎麼可能沒有足夠的權限呢?自然,當我嘗試 GRANT ALTER 或 GRANT CREATE 時,我得到“無法授予、拒絕或撤銷對 sa、dbo、實體所有者、information_schema、sys 或您自己的權限。” 我究竟做錯了什麼?

如果您使用的是 SQL Server 2005 或更高版本,那麼要在架構中創建表,您需要數據庫級別創建 TABLE 和在架構級別進行 ALTER。架構的所有權涵蓋了 ALTER 權限要求,但不包括 CREATE TABLE 。

CREATE TABLE 也由db_ddladmin固定數據庫角色的成員資格授予。這個角色是為了向後兼容——不要將它用於新的安全實現。

引用自:https://dba.stackexchange.com/questions/46845