[サンプルデータベース設計] [1]
[1]:https://i.stack.imgur.com/2vxEb.png - テーブル "dbo.Month"
CREATE TABLE dbo.Month (
Id int NOT NULL,
Name nvarchar(50) NOT NULL,
CONSTRAINT PK_Month PRIMARY KEY CLUSTERED (Id)
)
- テーブルIncomeType」
CREATE TABLE dbo.IncomeType (
Id int NOT NULL,
Name nvarchar(50) NOT NULL,
CONSTRAINT PK_IncomeType PRIMARY KEY CLUSTERED (Id)
)
- 表 "FinancialYear"
CREATE TABLE dbo.FinancialYear (
Id int NOT NULL,
YearSpan nvarchar(50) NOT NULL,
CONSTRAINT PK_FinancialYear PRIMARY KEY CLUSTERED (Id)
)
- テーブル "従業員"
CREATE TABLE dbo.Employee (
Id int NOT NULL,
Name nvarchar(50) NOT NULL,
CONSTRAINT PK_Employee PRIMARY KEY CLUSTERED (Id)
)
- 表 "所得"
CREATE TABLE dbo.Income (
Id int NOT NULL,
EmployeeId int NOT NULL,
TypeId int NOT NULL,
YearSpanId int NOT NULL,
MonthId int NOT NULL,
CONSTRAINT PK_Income PRIMARY KEY CLUSTERED (Id)
)
--Alter各表
ALTER TABLE Income
ADD CONSTRAINT FK_Income_Employee FOREIGN KEY (EmployeeId) REFERENCES Employee (Id)
ALTER TABLE dbo.Income
ADD CONSTRAINT FK_Income_FinancialYear FOREIGN KEY (YearSpanId) REFERENCES dbo.FinancialYear (Id)
ALTER TABLE dbo.Income
ADD CONSTRAINT FK_Income_IncomeType FOREIGN KEY (TypeId) REFERENCES dbo.IncomeType (Id)
ALTER TABLE dbo.Income
ADD CONSTRAINT FK_Income_Month FOREIGN KEY (MonthId) REFERENCES dbo.Month (Id)
外部キー参照を追加します
- eeIDは今、単純結合あなたを助けることができるヶ月テーブルからMonthId
- 会計年度のテーブル要素が所得タイプテーブルから来る
- FinancialYear --from
-
Employeeテーブルから
来ます外部キー参照を使用して各値を取得してください
これは動的SQLで行う必要があります。これは非常に良いデータベース設計ではありません。 – HoneyBadger
これを実現するには、case文を使用できます。 – TechEnthusiast