我正在设置一些非常简单的测试表,并希望将列USERKEY
作为我的表tb_TestUSERS
的主键,然后将列USERKEY
作为表中的外键tb_TestFACT
。然后在此主键和外键之间建立关系。我希望能够使用脚本完成所有这些工作。
到目前为止,我只有基本的表脚本:
CREATE TABLE WH.dbo.tb_TestFACT
(DATEKEY INT,USERKEY INT);
INSERT INTO WH.dbo.tb_TestFACT
values
(1,1),
(2,1),
(3,2),
(4,2),
(5,2),
(6,3),
(7,3);
CREATE TABLE WH.dbo.tb_TestUSERS
(USERKEY INT,NAME VARCHAR(10));
INSERT INTO WH.dbo.tb_TestUSERS
values
(1,'FRED'),
(2,'PHIL'),
(3,'JACKO');
答案 0 :(得分:4)
CREATE TABLE tb_TestUSERS
(
UserKey INT NOT NULL,
Name VARCHAR(30),
CONSTRAINT tb_pk PRIMARY KEY (UserKey),
CONSTRAINT tb_uq UNIQUE (Name)
)
GO
CREATE TABLE tb_TestFACT
(
UserKey INT NOT NULL,
DateKey INT NOT NULL,
CONSTRAINT tb_fk FOREIGN KEY (UserKey)
REFERENCES tb_TestUSERS(UserKey),
CONSTRAINT tb_uq1 UNIQUE (UserKey, DateKey)
)
GO
答案 1 :(得分:1)
如果您有SQL Server Management Studio
或SQL Server Management Studio Express
,那么您实际上可以让它为您完成。或者,您可以在UI中执行此操作并将其编写到新窗口 - 所有非常有用的工具。