我数据添加成功了,但cmd.ExecuteNonQuery() =-1,请问谁遇到过这种情况,怎么回事
发布网友
发布时间:2022-04-08 09:37
我来回答
共2个回答
懂视网
时间:2022-04-08 13:58
对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。对于所有其他类型的语句,返回值为 -1。如果发生回滚,返回值也为 -1。
当我们用executenonquery执行select语句的时候于是就有了返回值为-1,回滚发生在事务中,如果执行SQL不包含事务,可以不做考虑。有事务的话,就要看看是哪里出错了,导致提交不成功,事务回滚。
下面看一下这个Demo
1 private int Select(string selectqueryString,
2 string connectionString)
3 {
4 using (SqlConnection connection = new SqlConnection(
5 connectionString))
6 {
7 SqlCommand command = new SqlCommand(selectqueryString, connection);
8 command.Connection.Open();
9 int result=command.ExecuteNonQuery();
10 return result;
11 }
12 }
13 //result 的值为-1
14 private int Common(string queryString,
15 string connectionString)
16 {
17 using (SqlConnection connection = new SqlConnection(
18 connectionString))
19 {
20 SqlCommand command = new SqlCommand(queryString, connection);
21 command.Connection.Open();
22 int result= command.ExecuteNonQuery();
23 return result;
24 }
25 }
26 //这里的querystring为update insert delete语句
27 //result的值为受影响的行数
SQLCommand.ExecutenonQuery受影响的行数为什么会是-1?
标签:
热心网友
时间:2022-04-08 11:06
注释掉string a = cmd.ExecuteNonQuery().ToString();
如果还不行,看看是不是数据库nocount开关是不是打开了
把nocount设置成off就OK
我数据添加成功了,但cmd.ExecuteNonQuery() =-1,请问谁遇到过这种情况...
如果还不行,看看是不是数据库nocount开关是不是打开了 把nocount设置成off就OK
Load Port、SMIF
威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层...
cmd.ExecuteNonQuery(); 为什么返回-1 高手请进
在.NET中,ExecuteNonQuery方法返回受到Insert,Update 和 Delete 操作影响的行数。对于所有其他查询都返回 –1,而不是一般认为的0。
ExecuteNonQuery()怎么用
报错是由于执行cmd.ExecuteNonQuery()这个错误的,在这里就有执行错误,系统就会将调试终止,提示你出错,后边的代码根本没有执行,怎么会实现你的报错呢,你这样不能够抓取系统报错,一般都是用try catch来抓取报错的 try { conn.Open();if(cmd.ExecuteNonQuery()==1)label2.Text="数据录入成功";} ca...
快速监视cmd.ExecuteNonQuery()显示上下文不存在cmd,总是返回-1,我用...
excuteNonQuery为受影响的行数 而你的sql语句是查询的是一个实体,所以你的sql语句错了 要么改sql语句 要么改方法,改sql语句你可以写为string sql = "SELECT count(*) FROM admin WHERE login_name = '" + loginName + "' and login_password='" + passWord + "' AND acc_sta...
cmd.ExecuteNonQuery()总是返回为1 ,明明没有执行任何dml语句。
C#...cmd.ExecuteNonQuery();是返回执行命令后影响的参数 返回符合你条件的所有语句,如果你要数据库里某张表的数据,说执行这个命令后他返回的是就是这张表的全部数据 cmd.ExecuteScalar();返回结果集中的首行首列 //返回的是在符合你SQL语句中的第一行第一例的数据 如果你SQL语句查的是整张表,...
数据库里有四条数据为什么cmd.executenonquery值-1
回答:当然是检查查询语句咯
事务处理中,cmd.ExecuteNonQuery;出错怎么办
你先用showmessage(inttostr(cmd.ExecuteNonQuery()));看一下返回值,最好是认真看出错的说明,英文不懂的也要查,重要。只有错误的类型才能判断你的出错问题,在这里看不到你的数据类型。如输出的问检查出这个值没有问题,就往上找!你的采纳是我前进的动力,还有不懂的地方,请你继续“追问”!
cmd.ExecuteNonQuery 出错 求救
1.查看连接字符串是否正确,其实用vs 开发环境就直接自己生成一个连接字符串,手写还易出错 2.查看连接是否打开,是否把打开的连接传给命令对象 3.查看查询语句是否正确(在查询分析器里执行一下,看结果是否正确)查询语句要注意 在.net 里 关键字最好大写,表的名字,有时要加[] 字符串字符要用'单...
C#向表中添加数据问题显示cmd.ExecuteNonQuery();(;附近有错)
string sql = "INSERT INTO GreenHouseManage VALUES('" + textBox1.Text + "'," + label6.Text + "," + label5.Text + "," + label7.Text + ",'0','0','0','0',location)";把你的字符串值加个单引号,类似:'" + textBox1.Text + "',
cmd.ExecuteNonQuery();
你的存储过程里 你存入或修改的数据长度超过了数据库对应字段设计的长度了 更改数据库字段的类型。。。