【发布时间】:2014-11-18 14:18:40
【问题描述】:
这里我尝试从另一个源数据库表中插入数据到事实表中这是我尝试的查询
alter procedure spfactinsert
as
insert into [pp dw].dbo.Dimfact(costprice,Prod_ID,Production_ID,MaterialQuantity,Quantity)
select [cost price],Products.[Product ID],Production_Detail.[ProdDetail ID],
[Material Quantity],Production_Detail.Quantity
from
[PRODUCTION PLANNING 2].dbo.Production_Detail,
[PRODUCTION PLANNING 2].dbo.[Materials],
[PRODUCTION PLANNING 2].dbo.[Recipies],
[PRODUCTION PLANNING 2].dbo.Products
where
Production_Detail.[ProdDetail ID]='1' and
[Materials].[Material ID]='1' and
[Recipies].[Recipy ID]='1'
and
Products.[Product ID]='13'
但它显示错误
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Dimfact_DimProduction". The conflict occurred in database "pp dw", table "dbo.DimProduction", column 'Production_ID'.
ERD 是 IMAGE ERD
我该如何解决这个问题?
【问题讨论】:
-
来吧,使用更好的格式。 DimProduction 的 Production_ID 也为 1。您在哪里是 Production_Detail.[ProdDetail ID]='1'。那些没有 on 的交叉连接看起来很奇怪。
标签: sql-server database tsql stored-procedures