日期:2014-05-18  浏览次数:20475 次

通过存储过程判断数据库服务器B是否存在,或者能正常连接。
请教各位大神。
在数据库服务器A的数据库A_1中创建一个存储过程,主要作用是判断数据库服务器B是否存在,或者能正常连接。
数据库服务器A的数据库A_1的某表中已经保存了数据库服务器B的IP地址和数据库的库名(假设为B_1),需要通过存储过程来验证数据库服务器B的IP地址和数据库的库名是否正确。
使用SQL SERVER 2008R2


------解决方案--------------------
可以用下面的试一下,但是连接不上的情况很多,不一定是不存在,可能配置不正确,用户名密码错误都可能。
SQL code

IF EXISTS (SELECT 1 FROM opendatasource('sqloledb','data source=远程ip;user id=用户;password=密码').B_1.dbo.表名)
BEGIN
    PRINT 'Exists'
END
ELSE
BEGIN
    PRINT 'Not Exists'
END