为了账号安全,请及时绑定邮箱和手机立即绑定

Database.ExecuteSqlCommand的返回值是什么?

Database.ExecuteSqlCommand的返回值是什么?

C#
慕斯王 2021-04-09 14:15:09
稍微修改这个问题的答案,假设我运行以下代码:public int SaveOrUpdate(MyEntity entity){    var sql =  @"MERGE INTO MyEntity                USING                 (                   SELECT   @id as Id                            @myField AS MyField                ) AS entity                ON  MyEntity.Id = entity.Id                WHEN MATCHED THEN                    UPDATE                     SET     Id = @id                            MyField = @myField                WHEN NOT MATCHED THEN                    INSERT (Id, MyField)                    VALUES (@Id, @myField);"    object[] parameters = {        new SqlParameter("@id", entity.Id),        new SqlParameter("@myField", entity.myField)    };    return context.Database.ExecuteSqlCommand(sql, parameters);}这实际上将运行,并返回一个int值。int是什么意思?该文件只是说执行命令后,数据库返回的结果。我做了几次测试,如果修改一行,它看起来是1,如果什么都没改变,它看起来是0。返回值是否修改了行数?
查看完整描述

1 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

对于大多数数据库,这意味着该命令影响的行数。但是我认为,上帝禁止这样的事情存在,数据库供应商可以自由退还任何东西,然后您需要查看特定数据库的文档中数字的含义。


查看完整回答
反对 回复 2021-04-24
  • 1 回答
  • 0 关注
  • 410 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信