【发布时间】:2010-06-02 14:53:31
【问题描述】:
这是我的插入语句
INSERT INTO ProductStore (ProductID, StoreID, CreatedOn)
(SELECT DISTINCT(ProductId), 1, GETDATE() FROM ProductCategory
WHERE EXISTS (SELECT StoreID, EntityID FROM EntityStore
WHERE EntityType = 'Category' AND ProductCategory.CategoryID = EntityStore.EntityID AND StoreID = 1))
我正在尝试插入表 ProductStore,所有映射到类别的产品都映射到存储 1。列 StoreID 肯定可以有多个具有相同条目的行。我收到以下错误:违反主键约束...
但是,以下查询确实有效:
INSERT INTO ProductStore (ProductID, StoreID, CreatedOn)
VALUES (2293,1,GETDATE()),(2294,1,GETDATE())
显然,ProductID 列试图多次插入相同的列。
您发现我的查询有什么问题吗?
TIA
【问题讨论】:
标签: sql select insert primary-key