百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
返回工具页/返回 Issues 列表
#259·sqlite-vec

INSERT OR REPLACE 在 vec 表主键上导致 UNIQUE 约束失败

作者: davejitsu创建于 2026年2月7日更新于 2026年8月4日

c# 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; }

内容来源: asg017/sqlite-vec

查看 GitHub 原文在 GitHub 查看讨论