丈夫欲遂平生志,一载寒窗一举汤。这篇文章主要讲述Dapper入门教程——执行非查询语句相关的知识,希望能为你提供帮助。
描述你可以从任意实现IDbConnection的类对象中调用Dapper的扩展方法“Execute”。它能够执行一条命令(Command)一次或者多次,并返回受影响的行数。这个方法通常用来执行:
- Stored Procedure
- INSERT statement
- UPDATE statement
- DELETE statement
名称 | 描述 |
---|---|
sql | 要执行的sql语句文本 |
param | command的参数 |
transaction | 事务 |
commandTimeout | command超时时间 |
commandType | command类型 |
string sql = "EXEC Invoice_Insert"; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new {Kind = InvoiceKind.WebInvoice, Code = "Single_Insert_1"}, commandType: CommandType.StoredProcedure); My.Result.Show(affectedRows); }
文章图片
多次执行存储过程多次,数组中的每条数据都执行一次
string sql = "EXEC Invoice_Insert"; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new[] { new {Kind = InvoiceKind.WebInvoice, Code = "Many_Insert_1"}, new {Kind = InvoiceKind.WebInvoice, Code = "Many_Insert_2"}, new {Kind = InvoiceKind.StoreInvoice, Code = "Many_Insert_3"} }, commandType: CommandType.StoredProcedure ); My.Result.Show(affectedRows); }
示例:执行插入 单次执行插入语句一次
string sql = "INSERT INTO Invoice (Code) Values (@Code); "; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new {Kind = InvoiceKind.WebInvoice, Code = "Single_Insert_1"}); My.Result.Show(affectedRows); }
多次执行多次,数组中的每条数据都执行一次
string sql = "INSERT INTO Invoice (Code) Values (@Code); "; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new[] { new {Kind = InvoiceKind.WebInvoice, Code = "Many_Insert_1"}, new {Kind = InvoiceKind.WebInvoice, Code = "Many_Insert_2"}, new {Kind = InvoiceKind.StoreInvoice, Code = "Many_Insert_3"} } ); My.Result.Show(affectedRows); }
示例:执行Update 单次执行Update语句一次
string sql = "UPDATE Invoice SET Code = @Code WHERE InvoiceID = @InvoiceID"; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new {InvoiceID = 1, Code = "Single_Update_1"}); My.Result.Show(affectedRows); }
多次执行多次,数组中的每条数据都执行一次
string sql = "UPDATE Invoice SET Code = @Code WHERE InvoiceID = @InvoiceID"; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new[] { new {InvoiceID = 1, Code = "Many_Update_1"}, new {InvoiceID = 2, Code = "Many_Update_2"}, new {InvoiceID = 3, Code = "Many_Update_3"} }); My.Result.Show(affectedRows); }
示例:执行Delete 单次【Dapper入门教程——执行非查询语句】执行Delete语句一次
string sql = "DELETE FROM Invoice WHERE InvoiceID = @InvoiceID"; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new {InvoiceID = 1}); My.Result.Show(affectedRows); }
多次执行多次,数组中的每条数据都执行一次
string sql = "DELETE FROM Invoice WHERE InvoiceID = @InvoiceID"; using (var connection = My.ConnectionFactory()) { connection.Open(); var affectedRows = connection.Execute(sql, new[] { new {InvoiceID = 1}, new {InvoiceID = 2}, new {InvoiceID = 3} }); }
推荐阅读
- 获取App应用信息
- Android 歌词显示
- ./vendor/mk/bootanimation/Android.mk:39: *** stop
- Android中BroadcastReceiver组件具体解释
- Web App和Native App性能对比
- 安卓,网页控件,显示网页Android, web controls, display web pages
- AndroidStudio项目提交(更新)到github最具体步骤
- 安卓 运行调试 配置androidRun/debug configurations
- 安卓 logcat设置 Android logcat Settings