【问题标题】:Insert into Table from #tempTable fails从#tempTable 插入表失败
【发布时间】:2011-02-16 15:00:28
【问题描述】:

我只是从表中获取数据并将其插入#tempTable,然后删除数据,并将其插入回表中。我得到“插入错误:列名或提供的值的数量与表定义不匹配。”错误。

这是我正在运行的线路。

SELECT * INTO #tempTable FROM dbo.ProductSales 

SELECT * FROM #tempTable

DELETE FROM dbo.ProductSales

INSERT INTO dbo.ProductSales SELECT * FROM #tempTable

有什么想法吗?

【问题讨论】:

  • ProductSales 有计算列吗?

标签: sql-server select insert


【解决方案1】:

如果ProductSales 具有标识或时间戳/行版本列,您将无法使用SELECT * 进行插入。相反,枚举跳过标识列的列:

Insert ProductSales(Col1, Col2....
Select Col1, Col2...
From #tempTable

【讨论】:

    猜你喜欢
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 2019-11-30
    • 1970-01-01
    • 2016-03-29
    • 2017-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多