2011-04-04 84 views
0

什麼是從遠程計算機檢查數據庫訪問的最佳方法。檢查數據庫訪問(SQL Server 2005/2008)

這裏的情況是:

  • 的SQL Server 2005(或2008)上MACHINE1運行(Windows 2003或2008)。有一個名爲ENTERPRISEDB的數據庫。

  • 另一臺服務器,名爲MACHINE2(Windows 2003或2008)。它有ODBC連接到MACHINE1

現在,什麼是最好的,最簡單的SQL查詢來檢查是否MACHINE2可以MACHINE1連接並訪問ENTERPRISEDB

謝謝。

+2

**接受答案很重要!**。您已經提出了5個問題,並且沒有投票並且沒有接受任何答案。確保你接受你的問題的正確答案,以便其他人知道什麼是有效的。 – JNK 2011-04-04 15:29:47

+0

傻我,我不知道如何接受答案!我試圖點擊有用的,但得到警告。謝謝!我已經接受了答案。 – ewlung 2011-04-06 08:00:06

回答

0

如果ODBC連接到數據庫,EnterpriseDB公司,那麼你可以運行

SELECT top 1 1 FROM INFORMATION_SCHEMA.SCHEMATA WHERE CATALOG_NAME='ENTERPRISEDB' 

將返回「1」,如果數據庫中存在或沒有,如果它沒有。

如果你需要一個布爾/ int返回然後嘗試

SELECT case when COUNT(*) >0 then 1 else 0 end 
FROM INFORMATION_SCHEMA.SCHEMATA WHERE CATALOG_NAME='ENTERPRISEDB' 

將返回「1」,如果它存在,「0」,如果它沒有。

+0

謝謝,這是我需要:) – ewlung 2011-04-06 07:57:54

0

我總是用

Select @@servername, @@SERVICENAME 

返回服務器名稱,實例名稱來檢查基本服務器連接。要檢查數據庫連接本身是否正確,您無法擊敗sys.objects。

select DB_NAME(), * from sys.objects 

返回一個表格,其中當前數據庫名稱爲第一列,對象名稱列表爲通用數據列表。