2013-10-23 113 views

回答

4
SELECT database_id FROM sys.databases WHERE name = N'testdb1'; 
+0

謝謝。它與使用'DB_ID'函數有什麼不同? – ahmd0

+2

@ ahmd0我通常儘量遠離元數據函數,因爲它們中的許多塊都被阻塞。如果此命令被阻止,我可以更改隔離級別。我不能這樣做的功能。 [請參閱此Connect項以獲取更多信息(並確認它不會被修復)](http://connect.microsoft.com/SQLServer/feedback/details/432497/metadata-functions-should-follow-same-isolation -semantics-AS-元數據查詢)。 –

4
select DB_ID (N'testdb1') 

Source

+0

謝謝,這很簡單。雖然你應該糾正它到'選擇DB_ID(N'testdb1');' – ahmd0

+0

雖然這是一個正確的答覆,但我不能將它標記爲答案,因爲原始帖子包含語法錯誤。 – ahmd0

+0

確實,語法圖中包含'[]'不是語法的一部分,而是顯示該名稱是可選的(例如,'SELECT DB_ID();'將爲您提供當前數據庫的database_id,而不必指定名稱)。 –

相關問題