【发布时间】:2015-11-24 16:31:29
【问题描述】:
我有两张桌子
100 HL Road Frame HL Road Frame - Black, 58 FR-R92B-58 Black 1431.50 1059.31 Road Frames 183 NULL
101 HL Road Frame HL Road Frame - Red, 58 FR-R92R-58 Red 1431.50 1059.31 Road Frames 183 NULL
102 Sport-100 Sport-100 Helmet, Red HL-U509-R Red 34.99 13.09 Helmets 112 NULL
103 Sport-100 Sport-100 Helmet, Black HL-U509 Black 34.99 13.09 Helmets 112 NULL
104 Mountain Bike Socks Mountain Bike Socks, M SO-B909-M White 9.50 3.40 Socks 132 NULL
对于类别:
╔═══════╦═══════════════════╗
║ 1 ║ Bib-Shorts ║
║ 2 ║ Bike Racks ║
║ 3 ║ Bike Stands ║
║ 4 ║ Bottles and Cages ║
║ 5 ║ Bottom Brackets ║
╚═══════╩═══════════════════╝
我正在尝试替换第一个表中的空值并使用第二个表中的类别 ID 填充它们,我认为插入语句会起作用,但它并没有像我想象的那样做我认为它会做的事情。
CREATE TABLE PRODUCTCATEGORY
(
categoryID INT IDENTITY(1, 1) CONSTRAINT pk_PRODUCTCATEGORY_category_ID
PRIMARY KEY,
categoryname VARCHAR(50)
)
是桌子
ALTER TABLE product
ADD categoryID INT
INSERT INTO product
SELECT categoryID
FROM PRODUCTCATEGORY
我得到的错误是 Msg 213, Level 16, State 1, Line 18 列名或提供的值的数量与表定义不匹配。用于插入
感谢任何输入。
【问题讨论】:
-
您需要在问题中多做一些工作,因为不是 100% 清楚。请阅读How to ask 和How to create a Minimal, Complete, and Verifiable example. 这是一个很好的起点spaghettidba.com/2015/04/24/…
-
您可能还想搜索有关 SQL 中 INSERT 语句的教程,因为您似乎还没有掌握基本知识。
标签: sql-server sql-server-2012 sql-insert