我正在开发一个SSIS包,其中Source是sql表:
CREATE TABLE [dbo].[Stage_Clean](
[StudentName] [varchar](50) NULL,
[Class] [int] NULL,
[Subject] [varchar](50) NULL,
[Marks] [int] NULL,
[FullMarks] [int] NULL,
[Remarks] [varchar](100) NULL
)
来自此源的数据需要导出到Fact表和2 dim table:
CREATE TABLE [dbo].[FactResult](
[StudentName] [varchar](50) NULL,
[ClassID] [int] NULL,
[SubjectID] [int] NULL,
[Marks] [int] NULL,
[FullMarks] [int] NULL,
[Remarks] [varchar](100) NULL
)
CREATE TABLE DimClass
(
ClassID INTEGER IDENTITY(1,1),
Class INTEGER
)
CREATE TABLE DimSubjects
(
SubjectID INTEGER IDENTITY(1,1),
Subjects VARCHAR(50)
)
Stage_Clean中的数据需要转移到FactResult,并使用列Class和Subjects的相应外部id。如果在源中有新的类或主题条目,它将首先分别将类和主题插入DimClass和DimSubjects,然后将相应的外来ID插入到事实表中。
提前致谢....
答案 0 :(得分:0)
这看起来像是一个家庭作业问题,所以我不会给你答案,但会给出理论上的方法。您需要首先根据相应属性的不同列表加载每个DimTable。加载了暗淡表后,您可以在事实表中查找每个属性的ID。