首页 > 解决方案 > 替代文本列上的索引视图

问题描述

我有一个我不拥有或控制从另一个系统加载的数据库表 - 所有字段都是Text- 所以显然它对于任何查询性能而言都是无用的。

我想通过创建一个索引视图来解决这个问题,它只是将每个字段转换为int,datevarchar......但显然你不能在文本字段上创建索引视图。

我知道我可以将创建表作为选择...但这是一次性的,如果有人再次加载到基础表中,它不会自动更新。

有没有什么办法可以让一个没有text列的活表从一个有text列的表中创建出来?

标签: sqlsql-server

解决方案


你不拥有它或控制它,所以我想触发器是不可能的。我可能会尝试更改跟踪。您可以使用它来同步更改,或者触发重新加载您的表格版本。如果您不能容忍同步中的任何延迟,那么这可能不适合您。

如果更新是大批量或偶尔通过完全重新加载进行的,那么触发重新加载可能是可行的方法。验证一分钟左右没有变化,以确保数据在重新加载之前稳定。计划每隔几分钟运行一次的作业可以处理重新加载。

如果进行更快的同步,则使用循环和等待(秒或分钟)运行脚本的作业可以处理自上次运行或循环以来的新更改。

检测更改的开销应该很小。


推荐阅读