【问题标题】:INSERT TRIGGER problems: "Key column information is insufficient or incorrect. Too many rows were affected by update."INSERT TRIGGER 问题:“键列信息不足或不正确。更新影响的行数过多。”
【发布时间】:2010-12-05 18:48:37
【问题描述】:

我的触发器有一些问题:

CREATE TRIGGER "tblSettingTable_INSERT"
ON dbo.tblSettingTable
FOR INSERT
    AS

INSERT INTO dbo.tblSettingReportParameter (tableName, columnName, columnCaption)
SELECT   tableName = CAST(OBJECT_NAME(c.object_id) AS varchar(100)),
            columnName = CAST(c.name AS varchar(100)),
            columnCaption = CAST(ex.value AS varchar(100))
FROM        sys.columns c
LEFT OUTER JOIN sys.extended_properties ex
            ON ex.major_id = c.object_id 
            AND ex.minor_id = c.column_id  
            AND ex.name = 'MS_Caption'
INNER JOIN  inserted ON OBJECT_NAME(c.object_id) = inserted.tableName
WHERE      OBJECTPROPERTY(c.object_id, 'IsMsShipped')=0  
         AND OBJECT_NAME(c.object_id) = inserted.tableName

我正在尝试从表中获取一些列属性并将其插入dbo.tblSettingReportParameter,但我遇到了这个问题:“关键列信息不足或不正确。更新影响了太多行。 "

我做错了什么?使用 MS-SQL 2008 RS。

谢谢,

斯蒂芬

【问题讨论】:

    标签: sql-server-2008 ms-access triggers


    【解决方案1】:

    如果您将SET NOCOUNT ON 添加到触发器,则应该修复。

    xx rows returned 使 Access 令人困惑(我假设它当然会根据问题的标签向 SQL Server 发出 INSERT)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-19
      • 2017-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-13
      相关资源
      最近更新 更多