是否可以添加在不同数据库中调用用户定义函数的检查约束?

时间:2012-01-01 22:46:34

标签: sql-server-2008 user-defined-functions sqlclr check-constraints

我试图将实际调用SQL#CLR函数RegEx_IsMatch的用户定义函数添加到列中,但是我收到此错误:

在此上下文中,用户定义的函数名称不能以数据库名称为前缀。

但如果该功能位于不同的数据库中,我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

从未尝试过,但也许你可以在同一个DB中创建一个辅助函数,然后再调用另一个DB?

然而,这可能会失败,因为检查约束应该是确定性的AFAIR,并且对其他数据库的调用不是确定性的。一般来说,调用另一个DB似乎不是一个好主意,即使它仅用于正则表达式检查。为什么不将CLR程序集也添加到此DB中?