执行插入语句,object val = cmd.ExecuteScalar() val = null

时间:2023-03-08 17:56:15

在写接口的过程中遇到错误:空对象不能转换为值类型

因为我们使用的是petapoco,经过调试后发现是

object val = cmd.ExecuteScalar() 这一句造成的报错, val = null

因为我执行的是insert语句,而这个方法的功能是:只返回数据集的第一行第一列

解决方案:

①最简单的一种

在service层调用db.Execute这个方法而不是ExecuteScalar方法

②在sql中增加一句sql代码,select 1; 即可。因为ExecuteScalar是返回数据集的第一行第一列