小编JDP*_*ham的帖子

记录在主数据库中的数据库所有者SID与数据库所有者SID不同

当我尝试将tSQLt安装到现有数据库时,我收到以下错误:

记录在主数据库中的数据库所有者SID与记录在数据库''中的数据库所有者SID不同.您应该通过使用ALTER AUTHORIZATION语句重置数据库''的所有者来纠正这种情况.

sql-server clrstoredprocedure tsqlt

76
推荐指数
5
解决办法
8万
查看次数

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

我从 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';
Run Code Online (Sandbox Code Playgroud)

--部分相关表信息

CREATE TABLE [dbo].[InvoiceOut](
...
    [InsertField] [text] NULL,
    [DeductibleText] [text] NULL,
    [BarcodeText] [text] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
Run Code Online (Sandbox Code Playgroud)

t-sql tdd sql-server-2008-r2 tsqlt

3
推荐指数
1
解决办法
2万
查看次数

无法将值NULL插入列 - 具有2个父项的NHibernate实体

{"无法将值NULL插入列'RootID',表'Legacy.dbo.Middle';列不允许空值.INSERT失败.\ r \n语句已终止."}

我有一个Root类,Middle类和'bottom'类.作为孩子的"中间"的根类,然后中间有"底部"作为孩子.但是,在这个设计较差的遗留数据库中,还有一个来自"Bottom"的"Root"引用.

根表

  CREATE TABLE [dbo].[Root](
    [RootID] [int] IDENTITY(1,1) NOT NULL,
    [RootName] [varchar](max) NOT NULL,
 CONSTRAINT [PK_Root] PRIMARY KEY CLUSTERED 
(
    [RootID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
Run Code Online (Sandbox Code Playgroud)

中间的桌子

   CREATE TABLE [dbo].[Middle](
        [MiddleID] [int] IDENTITY(1,1) NOT NULL,
        [MiddleName] [varchar](max) NOT NULL,
        [RootID] [int] NOT NULL,
     CONSTRAINT [PK_Middle] PRIMARY KEY CLUSTERED 
    (
        [MiddleID] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = …
Run Code Online (Sandbox Code Playgroud)

c# nhibernate fluent-nhibernate

3
推荐指数
1
解决办法
5398
查看次数