我在SQL Server中有一个Oracle链接服务器,并希望将多个视图的内容复制到SQL Server中的数据库,这些来自Oracle的视图将成为SQL Server中的表。我一次做了这个,但我正在寻找一个解决方案,能够刷新这些视图,其中104个,每晚一夜。
我可以手动设置作业,但我正在寻找一种解决方案,它将从视图中删除并重新创建表,或只刷新存在的SQL Server表中的数据。
希望我已经解释得这么好了!
非常感谢您提供任何帮助。
答案 0 :(得分:1)
如果您还没有MSSQL数据库中的表结构,我会说所有104个视图都要经历一次,并说出以下内容:
SELECT *
INTO MSSQLNewTable (this will be the name of your new table)
FROM <However you reference your Oracle view from within MS SQL Server>
执行此操作后,创建一个说:
的SQL脚本TRUNCATE TABLE MSSQLTable_Name
INSERT INTO MSSQLTable_Name
SELECT * FROM OracleTable_Name
.....每张桌子。在按您设置的计划运行的数据库实例中创建作业。
使用sys。用于生成语句的表,因此您不必键入104次。