由於帳戶權限或數據庫被標記爲只讀,確定給定SQL Server表是否爲只讀的最佳方式是什麼?確定SQL Server表是否爲只讀
0
A
回答
0
你的意思是除了試圖寫入它的權利?
0
在SQL Server的Information Schema Views,特別是,TABLE_PRIVILEGES有一個翻身。
1
--for database (updated for newer versions)
SELECT DATABASEPROPERTYEX(DB_NAME(), 'Updateability')
--for tables.
SELECT
*
FROM
sys.tables t
LEFT JOIN
sys.database_permissions dp2 ON dp2.major_id = t.object_id AND dp2.permission_name = 'SELECT'
WHERE
NOT EXISTS (SELECT * FROM
sys.database_permissions dp
WHERE
dp.major_id = t.object_id
AND
dp.permission_name IN ('INSERT', 'DELETE', 'UPDATE'))
修改*如需要得到你想要的東西:這個檢查無/ SELECT那裏沒有I/U/d權利
你也有FILEGROUPPROPERTY等,如果您有隻讀文件組
編輯:用於當前連接和每個用戶的直接表權限。不通過組層級迭代
SELECT
*
FROM
sys.tables t
JOIN
sys.database_permissions dp2 ON dp2.major_id = t.object_id AND dp2.permission_name = 'SELECT'
WHERE
dp2.grantee_principal_id = USER_ID()
AND
dp.permission_name IN ('INSERT', 'DELETE', 'UPDATE'))
相關問題
- 1. 只讀在SQL Server
- 2. 確定SQLite 3數據庫是否爲只讀 - 不使用sqlite3_db_readonly()
- 3. 確定SQL Server CE中是否存在表?
- 4. SQL Server只讀權限
- 5. SQL Server 2012只讀連接
- 6. 確保SQL查詢是隻讀的
- 7. 確定SQL Server中是否存在臨時表的最佳方法是什麼?
- 8. SQL Server是表鎖定?
- 9. 有沒有辦法確定輸入流是否只讀?
- 10. 確定Access數據庫是否具有隻讀權限
- 11. 如何確定Word文檔是否只讀?
- 12. SQL:以編程方式確定表是否爲視圖
- 13. 表是「只讀」
- 14. 如何確定SQL Server中是否存在數據庫角色?
- 15. 確定SQL Server數據庫是否恢復
- 16. 如何確定SQL Server是否支持複製
- 17. 如何確定我是否安裝了本地SQL Server 2008 R2
- 18. 如何確定SQL Server Management Studio Express(2005)是否已安裝?
- 19. 確定這是SQL Server作業嗎?
- 20. C#/ SQL Server - 確定表的順序
- 21. SharedPreferences是否是隻讀的?
- 22. Sharepoint的只讀模式是否爲只讀模式?
- 23. 是否有SQL Server Express的SQL Server Profiler?
- 24. 如何確定列是否在其表的主鍵中? (SQL Server)的
- 25. 如何在C#中確定SQL Server數據庫列是否爲自動增量?
- 26. 是否存在Microsoft SQL Server綁定?
- 27. sql server中的只讀文件組
- 28. SQL Server Management Studio(或SQL Server)是否評估* all *表達式?
- 29. 是否有可能將只讀查詢路由到從屬SQL Server的JDBC池?
- 30. 是否可以在SQL Server 2008 R2中強制執行只讀字段?
我使用屬於public和db_datareader角色的帳戶連接到數據庫。證實它具有隻讀訪問權限,並且這些查詢都沒有表明我擁有隻讀訪問權限,從我所知道的情況來看。 – Rono 2010-04-08 02:34:17
從這個意義上說,如果連接是隻讀的,則無法檢測到連接。我給出的第二個查詢會告訴你public和db_datareader沒有I/U/D權限,它們是相同的。 – gbn 2010-04-08 04:23:02
我應該看哪些列來確定?我在一個只讀連接和一個可編輯連接上運行了第二個查詢,我沒有看到它們之間有用的區別。或者你說這是不可能的? – Rono 2010-04-18 02:34:34