ITADN

INSERT OR REPLACE causes UNIQUE constraint failure on vec table primary key

#259Opendavejitsu 创建于 2026-02-07
D
davejitsucommented
Microsoft.Data.Sqlite.SqliteException: 'SQLite Error 1: 'UNIQUE constraint failed on vec_comments primary key'.' ```csharp private int UpsertEmbeddings(string tableName, IEnumerable<VectorEmbedding> vectorEmbeddings) { var affectedRows = 0; using var transaction = connection.BeginTransaction(); using var command = connection.CreateCommand(); command.CommandText = $"INSERT OR REPLACE INTO {tableName} (rowid, embedding) Values (@id, @embedding);"; command.Parameters.Add("@id", SqliteType.Integer); command.Parameters.Add("@embedding", SqliteType.Blob); foreach (var embedding in vectorEmbeddings) { command.Parameters["@id"].Value = embedding.Id; command.Parameters["@embedding"].Value = MapVectorToBytes(embedding.Embedding); affectedRows += command.ExecuteNonQuery(); } transaction.Commit(); return affectedRows; } ```
2 条评论