デフォルトでは、EFコードは最初にStoreGeneratedPattern=Identitを設定することを知っています。大丈夫です。しかし、SQLスクリプトを介してデータの一部を挿入したいと思います。時間内に1つのテーブルだけが可能であることを私は知っていますSET IDENTITY_INSERT Rules ON;
しかし、私が走ろうとすると
USE [GameDatabase]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--RULES OF GAME
SET IDENTITY_INSERT RulesOfGames ON;
INSERT INTO RulesOfGames(RulesOfGameId, MaxScore, IsPossibleEqualsScore) VALUES(1, 20, 1);
SET IDENTITY_INSERT RulesOfGames OFF;
--KindSport
SET IDENTITY_INSERT RulesOfGames ON;
INSERT INTO KindSports(KindSportId, Name, RulesOfGame_RulesOfGameId) VALUES(1, 'Футбол', 1);
SET IDENTITY_INSERT KindSports OFF;
エラーが発生します。そして、特定のロジック制約を設定するために特定のIDを設定したいと思います。
Msg 8107, Level 16, State 1, Line 3
IDENTITY_INSERT is already ON for table 'GameDatabase.dbo.KindSports'. Cannot perform SET operation for table 'RulesOfGames'.
どうすれば問題を解決できますか?