TSQLT单元测试 - 数据类型文本和文本在等于运算符中不兼容

时间:2012-09-05 15:43:35

标签: tsql tdd sql-server-2008-r2 tsqlt

我从AssertEqualsTable收到此错误“数据类型文本和文本在等于运算符中不兼容。”

然后

“'TableCompare'过程尝试返回NULL状态,这是不允许的。将返回状态0。”

select   *
    into #Actual
    from [dbo].[InvoiceOut];

--make expected table an empty table of #actual's structure because we truncate so it should be empty.
    SELECT TOP(0) *
    INTO #Expected
    FROM #Actual;

EXEC tSQLt.AssertEqualsTable '#Expected', '#Actual';

- 相关表格信息的一部分

CREATE TABLE [dbo].[InvoiceOut](
...
    [InsertField] [text] NULL,
    [DeductibleText] [text] NULL,
    [BarcodeText] [text] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

1 个答案:

答案 0 :(得分:3)

我认为你不能比较文本字段值,这可以解释错误。

此外,不推荐使用文本数据类型,而使用varchar(MAX)。

请参阅this