这基本上就是我的情景:
对于某些大型查询,对此数据库的搜索速度非常慢,因此我创建了几个视图,对数据进行了一些按摩和一些计算,它通过连接表格等为我提供了所需的确切数据。
现在我有了观点,我可以对它们进行超级简单的查询,并且可以非常轻松地提取我需要的确切信息。但是,如果我在运行时在用户点击我的网站上的按钮时执行此操作,则需要花费大量时间并且用户可以获得一些超时。这是因为无论我使用的是一个简化生活的视图,都会针对同样庞大而庞大的数据库执行查询...
我基本上喜欢做的是拥有一个第二个数据库(它将连接到我的前端,而不是当前的数据库),我可以在那里获得我感兴趣的数据#&# 39; ve在初始数据库上创建(这是我需要的确切数据),但我不知道如何实现。
非常感谢任何指针和示例。
谢谢!
答案 0 :(得分:0)
如果您想要一种简单的方法从视图加载带有数据的第二个数据库,您可以运行并插入这样的语句
INSERT INTO [secondDB].[dbo].[table_name]
(ColumnNames,...,N)
SELECT *
FROM View
WHERE column1ID = ID
etc...
答案 1 :(得分:0)
您应该使用日志传送。
https://msdn.microsoft.com/en-us/library/ms190640.aspx
来自主服务器的所有交易将被发送(因此名称)几乎立即发送到辅助服务器或延迟您选择。
但是,视图确实可以让您的生活更轻松,但性能问题很可能是由于设计/模型不良,缺少索引,碎片索引,错误统计信息,索引太多或无用索引造成的。 你也看过这个吗?