Je suis nouveau SQLite et je suis en train d'exécuter le code suivant:SQLite: Insérer dans la colonne d'identité
using (var cn = new SQLiteConnection("Data Source=:memory:;Version=3;")) {
cn.Open();
var cmd = cn.CreateCommand();
cmd.CommandText = "CREATE TABLE [ContentItems] ([Id] [int] IDENTITY(1,1) NOT NULL, [Title] [nvarchar](100) NOT NULL, CONSTRAINT [PK_ContentItems] PRIMARY KEY ([Id]))";
cmd.ExecuteNonQuery();
var cmd2 = cn.CreateCommand();
cmd2.CommandText = "INSERT INTO [ContentItems] (Title) VALUES ('Test 1')";
cmd2.ExecuteNonQuery();
}
Mais cela donne l'erreur:
Abort due to constraint violation ContentItems.Id may not be NULL
J'ai eu un coup d'oeil à travers la documentation mais basé sur mon passé expérience SQL je ne peux pas voir pourquoi cela ne fonctionne pas. J'apprécierais l'aide. Merci
Vous avez oublié le bit d'incrémentation automatique – EaterOfCode
Une colonne d'ID auto-incrémentée explicite n'est généralement pas nécessaire dans SQLite: http://www.sqlite.org/autoinc.html – reinierpost