当前位置: 代码迷 >> Sql Server >> SQL 怎么自動以日期為表名備份表到不同服務器的數據庫里
  详细解决方案

SQL 怎么自動以日期為表名備份表到不同服務器的數據庫里

热度:67   发布时间:2016-04-24 10:32:23.0
SQL 如何自動以日期為表名備份表到不同服務器的數據庫里?
    SQL2005的 A服務器里有一個表M,
    M表裡的數據每天更新,
    如何能讓SQL自動將M表備份到SQL2005的B服務器里,備份的表名為當天的日期?

------解决方案--------------------
DECLARE @dt DATETIME
SET @dt=GETDATE()
DECLARE @SQL NVARCHAR(256)
SET @SQL=N''
SET @SQL=N'
SELECT * INTO [目标服务器].[目标库]..''M'''+CONVERT(VARCHAR(10),@dt,112)+' FROM [原服务器].[原库]..M where xxxxx'
print(@sql)

执行这个看看,别引用才能看到
------解决方案--------------------
SELECT * INTO [HRFSERVER].[TEST].dbo.M20140522 FROM [ERP-01].[TEST].dbo.M 

合理的样子应该是这样的
------解决方案--------------------
不好意思,忽略了个东西,SELECT INTO方式不能跨服务器,你可以换成:
在[HRFSERVER].[TEST] 库上执行:

SELECT * INTO M20140522 FROM [ERP-01].[TEST].dbo.M 
也就是在目标服务器执行,不是在源库执行
  相关解决方案