首页 > 解决方案 > 从选择插入:无效的列名...我在这里缺少什么?

问题描述

所以我有这个简单的查询:

INSERT INTO YanDev.dbo.PRODUCT (
name,
ExtensionData
)

values (
Description,
InventoryNumber
)

SELECT top 10 IV.inventorynbr,PT.Description FROM Interchange.dbo.InventoryNbrs IV
inner join powerlink.dbo.part_type PT
on substring(IV.inventorynbr,1,3) = PT.parttype

然而,“描述”和“Inventorynbr”出现了下划线,当我将鼠标悬停在它们上面时,它显示“列名无效”......(但这些列确实存在!)

列名无效

我在这里想念什么?

标签: sqltsql

解决方案


这是你的代码:

INSERT INTO YanDev.dbo.PRODUCT (name, ExtensionData)
    VALUES (Description, InventoryNumber)

Description并且InventoryNumber标识符而不是常量。据推测,您打算让它们来自以下查询。

正确的语法是INSERT . . . SELECT

INSERT INTO YanDev.dbo.PRODUCT (name, ExtensionData)
    SELECT top 10 IV.inventorynbr,PT.Description
    FROM Interchange.dbo.InventoryNbrs IV JOIN
         powerlink.dbo.part_type PT
         ON LEFT(IV.inventorynbr, 3) = PT.parttype

推荐阅读