1

The Data Model Resource Book, Vol. 1 の DB スキーマがあります。1 . その中には次のような表があります。

CREATE TABLE [dbo].[AccountingPeriod](
  [AccountingPeriodID] [int] NOT NULL,
  [RoleTypeID] [int] NOT NULL,
  [PeriodTypeID] [int] NOT NULL,
  [AcctgPeriodNum] [int] NOT NULL,
  [FromDate] [smalldatetime] NOT NULL,
  [ThruDate] [smalldatetime] NOT NULL,
  [PartyID] [int] NOT NULL,
PRIMARY KEY CLUSTERED (
  [AccountingPeriodID] ASC)

次のように定義された制約を使用します。

ALTER TABLE [dbo].[AccountingPeriod]  WITH CHECK ADD FOREIGN KEY([AccountingPeriodID])
REFERENCES [dbo].[AccountingPeriod] ([AccountingPeriodID])

AccountingPeriodID 列には、テキストが再帰参照列であると主張する自己参照外部キーがありますが、それはエラーだと思います。このテーブルに再帰参照を適切に格納するには、別の列が必要だと思います。作成者のメソッドは、提供されたテーブル定義で実装できますか?なぜですか?

4

1 に答える 1

1

はい、テーブルを自己参照するために、テーブル自体の主キー列を参照する別の列が必要です。自己参照列は本当に意味がありません。

于 2012-11-21T16:17:42.143 に答える