【问题标题】:SQL INSERT: Column name or number of supplied values does not match table definitionSQL INSERT:列名或提供的值的数量与表定义不匹配
【发布时间】:2014-09-03 17:02:04
【问题描述】:

即使在阅读了具有类似标题的其他问题后,我也无法弄清楚为什么这不起作用。最后的 INSERT 语句出现错误。

WITH qryRecordsNotYetCompleted AS
(
    SELECT  FormNbr,
            UserAssigned,
            DateAssignedToAnalyst,
            AssignmentStatus,
            DateImportedFromSQL,
            DateCompletedbyBAA,
            DateSentToClaimsToolbar
    FROM PENDS_BAA_MASTER WHERE ISNULL(DateCompletedbyBAA,'')=''
)
--/**********************************************************************************************

--2) For all those records, save any ASSIGNMENT information AND original DateImportedFromSQL value
SELECT qryRecordsNotYetCompleted.* INTO #TempPends FROM qryRecordsNotYetCompleted

--/**********************************************************************************************

--2b:
INSERT PENDS_BAA_MASTER_Temp
SELECT * FROM #TempPends

我检查了,PENDS_BAA_MASTER_Temp 肯定有列 UserAssigned、DateAssignedToAnalyst、AssignmentStatus、DateImportedFromSQL、DateCompletedByBAA、DateSentToClaimsToolbar。它们是与 PENDS_BAA_MASTER 完全相同的列类型,由于我的语句流,应该执行。

【问题讨论】:

  • 除了您指定的列之外,PENDS_BAA_MASTER_Temp 是否还有任何 other 列?列顺序是否匹配?
  • PENDS_BAA_MASTER_Temp 的列数是否比您的 CTE 多?
  • 你为什么需要#TempPends?似乎您可以在单个插入语句中执行此操作,而不是这么多副本。
  • 可能是个愚蠢的问题,但您不需要 INSERT 和 PENDS_BAA_MASTER_Temp 之间的 INTO
  • Mureinik,是的,它还有很多其他的列。但我认为因为我没有指定 Columns(, , , ) 值 (, , , ),而只是插入一个 Select *,所以没关系。 SQL Server 不只是为其余部分插入 Null 吗?

标签: sql sql-server tsql select


【解决方案1】:

我会将其作为单个插入语句来执行。像这样。您的原始查询中有 FormNbr,但没有在目标表中提及它。

INSERT PENDS_BAA_MASTER_Temp
(
    UserAssigned
    , DateAssignedToAnalyst
    , AssignmentStatus
    , DateImportedFromSQL
    , DateCompletedbyBAA
    , DateSentToClaimsToolbar
)
SELECT UserAssigned
    , DateAssignedToAnalyst
    , AssignmentStatus
    , DateImportedFromSQL
    , DateCompletedbyBAA
    , DateSentToClaimsToolbar
FROM PENDS_BAA_MASTER

【讨论】:

    猜你喜欢
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    • 2017-06-03
    • 2018-12-24
    • 2010-11-12
    • 2021-11-06
    • 2020-01-29
    相关资源
    最近更新 更多