[ad_1]
次のようにテーブルを設計しました。
SQL
CREATE TABLE [School]( [SchoolID] [int] IDENTITY(1,1) NOT NULL, [StudentID] [int] NOT NULL, [Section] [char](1) NOT NULL, CONSTRAINT [PK_Student] PRIMARY KEY NONCLUSTERED ( [SchoolID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY], CONSTRAINT [CUK_Student] UNIQUE CLUSTERED ( [StudentID] ASC, [Section] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]</pre>
値を挿入すると、エラーが発生します
Violation of UNIQUE KEY constraint 'CUK_Student'. Cannot insert duplicate key in object 'School'. The statement has been terminated.
エラーは私の理解を超えています。 これを修正する方法を教えてください。また、このエラーの背後にある理由を説明して、その原因を理解できるようにしてください。
前もって感謝します、
ヌタン・ラニー
解決策 1
やあ、
あなたの状況に応じて
UNIQUE KEY 制約違反:[StudentID]、[Section] 複合主キーであり、一意である必要があります。
[SchoolID] また、一意である必要があります。
したがって、同じ値を挿入しようとしています ([StudentID]、[Section])。
これをチェックして。 これは、挿入クエリの唯一のエラーです。
――アミット
解決策 3
列の一意のキーを作成しました [StudentID]、[Section].
たとえば、Studentid 列に「1」を挿入した場合、section 列に「section1」を挿入します。 同じ値の組み合わせを挿入しようとすると、そのエラーが発生します。
解決策 2
やあ…
[SchoolID] 主キーであるため、重複する値は許可されません。
エラーが発生しました。
解決策 5
UNIQUE KEY 制約 ‘UQ__TBL_Farm__91785593E0D120B6’ に違反しています。 オブジェクト ‘dbo.TBL_Farmer_Details’ に重複するキーを挿入できません。 重複キーの値は (232018411312) です。
[ad_2]
コメント