CLR UDT是否常用于企业应用程序?

时间:2009-01-27 23:28:41

标签: sql-server sqlclr user-defined-types

我正在研究SQL Server 2005/2008中可用的一些新技术。我的大多数应用程序都是用C#编写的,通常都有一个数据库组件。我在Google上找到的大多数内容都是基本的,“这就是你设置CLR UDT的方式”。我对他们的实际应用和使用有一些一般性的问题。

  • CLR是否托管了应用程序中常用的UDT?大小规模
  • 使用它们是否存在性能问题?
  • DBA通常更喜欢只使用内置类型吗?

它们似乎是一种将对象塞入表格的方法。我是否正确地假设由于使用简化了解决方案的实际问题范围很小?

2 个答案:

答案 0 :(得分:1)

我调查了它们,但对版本控制感到不安。如果将较新版本的程序集上载到服务器上会发生什么?由于依赖性,您必须删除UDT并重新创建它,但数据会发生什么?我们坚持使用内置类型。

答案 1 :(得分:1)

UDT只有在真正代表您的应用程序的某些基本项目时才有好处。几乎总是可以将它们分解为内置类型,但好处是您不必转换返回的对象。因此,您可能不应该使用代表复杂对象(如Employee)的UDT,但是像Size或Location这样的基本内容可能是一个不错的选择,因为它的定义很轻但很严格。

相关问题