【发布时间】:2011-01-10 15:07:29
【问题描述】:
我正在 SQL Server 2008 中为某些报告建立一个新数据库,并且有许多与这些数据相关的常见业务规则,它们会进入不同类型的报告。目前,这些规则主要结合在更大的程序程序中,使用一种遗留语言,我正试图将其转移到 SQL。我希望灵活地根据这些数据实现报告,例如 SAS 中的一些报告、C# 中的一些报告等。
我目前的方法是分解这些通用规则(通常是非常简单的逻辑)并将它们封装在单独的 SQL UDF 中。性能不是问题,我只是想使用这些规则在一种报告“快照”中填充静态字段,然后可以使用它以您想要的任何方式进行报告。
就了解每个规则的作用(以及维护规则本身)而言,我喜欢这种模块化方法,但我也开始有点担心维护也可能成为一场噩梦。有些规则取决于其他规则,但我真的无法摆脱这一点 - 这些东西相互依赖......这就是我想要的......我想? ;)
对于数据库中的这种模块化方法,是否有更好的方法?我是否走在正确的轨道上,还是我在考虑这一点时过于注重应用程序开发?
【问题讨论】:
-
谢谢大家!看起来这种方法应该没问题 :) 同样,性能不是这些问题,因为它们仅在每个 ETL/快照实例中使用一次。因此,填充这些函数输出到的字段可能需要一两三分钟,但在那之后,总是有人只查询表,从不使用查询中的函数。好吧,至少他们不应该使用它们!
标签: sql sql-server user-defined-functions modularity