我有一个 SQL Server 2008 数据库,其中包含我需要用来生成代码的数据(实际上它是一个 SQL 脚本,我需要生成以填充另一个具有不同结构的数据库,但请不要被它误导 - 这个是一个关于基本上基于数据生成一大块文本的问题)。
我担心性能。因此,一般来说,是否会更高效
a)在 SQL Server 上的存储过程中生成代码:
优点:数据不必通过网络移动,因此延迟问题更少(尽管必须发送完整的文本块,这可能更大)
缺点:操作数据很麻烦(游标),并且在 T-SQL(我想)中操作字符串比在 Web 服务器(.NET)上慢
b)检索我需要的数据并在 Web 服务器上生成代码:
优点:更快、更灵活的字符串处理
缺点:从 SQL 框中取回所有数据
为了这个问题,让我们考虑使用大约 100,000 行的数据
更新: 我没有提到我的目标是从表单提交生成脚本并将结果直接发送回浏览器。因此,在这种情况下,使用 SSIS 之类的解决方案可能会受到限制