我们公司有许多分支机构,每个分支机构都位于不同的国家。
因此,当我通过VPN连接更新任何国家/地区的数据库时,我需要通过vpn连接逐个更新另一个国家/地区的同一数据库。
这是非常烦人的工作......
所以我认为可以轻松地更新不同国家/地区的多个数据库。所以我正在开发一个存储过程,它将通过vpn一个接一个地连接到每个数据库,并从.sql
文件中读取脚本,并通过vpn在远程数据库中执行脚本。
所以请看看我的剧本并告诉我该怎么做。
这是一个表结构,我将放置所有远程数据库详细信息。
CREATE TABLE [dbo].[DBDetails]
(
[ServerName] [varchar](max) NULL,
[DBName] [varchar](max) NULL,
[UserID] [varchar](max) NULL,
[Password] [varchar](max) NULL,
[CountryCode] [varchar](2) NULL
)
SET NOCOUNT ON
DECLARE DB CURSOR FOR SELECT ServerName,DBName,UserID,Password,CountryCode FROM DBDetails
OPEN DB
DECLARE @ServerName varchar(MAX)
DECLARE @DBName varchar(MAX)
DECLARE @UserID varchar(MAX)
DECLARE @Password varchar(MAX)
DECLARE @CountryCode varchar(2)
FETCH NEXT FROM DB INTO @ServerName,@DBName,@UserID,@Password,@CountryCode
WHILE @@FETCH_STATUS = 0
BEGIN
-- here I need some help for opening db connection and read sql file and execute the statement
-- Please help here
FETCH NEXT FROM DB INTO @ServerName,@DBName,@UserID,@Password,@CountryCode
END
CLOSE DB
DEALLOCATE DB
感谢