所以我一直在使用这种方法将记录插入我的数据库:
TransactionBlock.Connection.Execute(
"INSERT Table(Item,Id)VALUES(@Item, @Id);
new {Item,Id = id }, TransactionBlock.Transaction);
我现在需要修改它,首先使用以下方法检查数据库中是否已经存在 Item/id:
const sql = "IF EXISTS (SELECT * FROM Table, where Item=@Item...etc etc
但我还没有遇到任何如何实现这一点的例子。我可以通过创建存储过程来实现这一点,但我想尝试使用这种方法来完成。
最佳答案
假设您正在使用 SQL Server 并且您只想插入不存在的记录,那么您正在寻找的 SQL 是
IF NOT EXISTS (SELECT * FROM Table WHERE Id = @Id)
INSERT INTO Table(Item, Id) VALUES(@Item, @Id)
关于c# - Dapper 插入,检查记录是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22760426/