使用用户定义的日期类型时,tSQLt FakeTable失败

使用用户定义的日期类型时,tSQLt FakeTable失败,tsql,tsqlt,Tsql,Tsqlt,当我试图伪造一个使用用户定义数据类型的表时,出现了以下错误 COLLATE子句不能用于用户定义的数据类型。{,1} 看起来这是tSQLt中的一个已知问题 除了修改表定义外,还有解决方法吗?谢谢。感谢Chris Francisco,现在有一个补丁: 仅供参考,我遇到了同样的问题,并且能够通过挖掘来绕过它 在tSQLt代码中插入一点。有一个函数名为 Private_GetFullTypeName 函数返回的最后一列名为“Collation”,其中 如果变量@CollationName为null,则

当我试图伪造一个使用用户定义数据类型的表时,出现了以下错误

COLLATE子句不能用于用户定义的数据类型。{,1}

看起来这是tSQLt中的一个已知问题


除了修改表定义外,还有解决方法吗?谢谢。

感谢Chris Francisco,现在有一个补丁:

仅供参考,我遇到了同样的问题,并且能够通过挖掘来绕过它 在tSQLt代码中插入一点。有一个函数名为 Private_GetFullTypeName

函数返回的最后一列名为“Collation”,其中 如果变量@CollationName为null,则返回空字符串“”。如果 将“OR is_user_defined=1”添加到空字符串的条件中 我已经能够用用户定义的数据类型伪造表

我没有遇到任何奇怪的副作用,但我 tSQLt(或一般tSQLt)内部工作方面没有专家 这可能会破坏其他地方的功能

换言之:

          CASE WHEN @CollationName IS NULL OR is_user_defined = 1 THEN ''
               ELSE ' COLLATE ' + @CollationName