ID 制約のない古いデータベースを移行していて、新しいデータベースに追加していて、すべて正常に機能していましたが、作成したログ ファイルを確認すると、このエラーに気付きました。テーブルには、自動インクリメントが 1 の ID キーがあります
私が使用しているコードは次のとおりです。
var cmd1 = new SqlCommand();
cmd1.Parameters.Clear();
cmd1.Connection = mySqlConnection;
cmd1.CommandType = CommandType.Text;
cmd1.CommandText = @"INSERT INTO [Tomin].[TominPredial].[Calle]([Nombre],[Id_Colonia]"
+ ",[Id_User],[Id_Date])"
+ " VALUES(@Nombre,@Id_Colonia,@Id_User,@Id_Date)";
cmd1.Parameters.AddWithValue("@Nombre", nombreCalle);
cmd1.Parameters.AddWithValue("@Id_Colonia", id_col);
cmd1.Parameters.AddWithValue("@Id_User", "Admin");
cmd1.Parameters.AddWithValue("@Id_Date", DateTime.Now);
cmd1.ExecuteNonQuery();
自動インクリメントによって主キーが設定されると思われるため、主キーを送信していないため、何が起こっているのかわかりません。何が起こっているのか分かりませんか?
エラーをスローする ID である値は、1 で始まり 562 で終わります。データを削除した後、使用しますDBCC CHECKIDENT('Tomin.TominPredial.Calle', RESEED, 0)
CREATE TABLE TominPredial.Calle (
Id_Calle SMALLINT NOT NULL IDENTITY(1,1) CONSTRAINT PK_Calle PRIMARY KEY,
Nombre NVARCHAR(50) NOT NULL,
Id_Colonia SMALLINT NOT NULL CONSTRAINT FK_Calle_Colonia REFERENCES TominPredial.Colonia (Id_Colonia),
Id_User NVARCHAR(30) NOT NULL CONSTRAINT FK_Calle_User REFERENCES TominUsuario.Usuario (ID),
Id_Date DATETIME2 NOT NULL,
Id_Estatus TINYINT DEFAULT 1 NOT NULL CONSTRAINT FK_Calle_Estatus REFERENCES TominSistema.Estatus (Id_Estatus)
);
GO