MySQL返回影响行数的测试示例

   found_rows() : select

  row_count() : update delete insert

  注:需要配合相应的操作一起使用,否则返回的值只是1和-1(都是不正确的值)

  示例:

  drop database if exists `mytest`;

  create database `mytest`;

  use `mytest`;

  drop table if exists `MyTestTable`;

  create table `MyTestTable`(`ID` int ,`Name` varchar(10));

  insert into `MyTestTable`(`ID`,`Name`)

  select '1','role1' union all

  select '2','role2' union all

  select '3','role3';

  select row_count(); -- 输出3(返回新添加的记录数),[注:如果使用insert into...values只返回1]

  select * from `MyTestTable`;select found_rows(); -- 输出3(返回选择的行数)

  update `MyTestTable` set `Name`='people';select row_count(); -- 输出3(返回修改的行数)

  delete from `MyTestTable`;select row_count(); -- 输出3(返回删除的行数)

时间: 2024-08-12 08:57:56

MySQL返回影响行数的测试示例的相关文章

mybatis mysql update 返回影响行数错误

问题描述 mybatis mysql update 返回影响行数错误 数据库有个订单表 有一行数据 order_id=1555(自增主键),有个标记字段order_mark=2 执行语句update t_order set order_mark = 2 where order_id=1555 使用mysql自带的client工具 Query OK 0 rows affected (0.00 sec)Rows matched: 1 Changed: 0 Warnings: 0 使用Navicat

mysql mybatis 执行update 返回影响行数错误

问题描述 mysql mybatis 执行update 返回影响行数错误 文章内容在:http://www.oschina.net/question/1244507_250862 我就不再次编辑了 解决方案 kohana返回db影响的行数,mysql影响的行数(delete,update)----------------------

dbutils 的QueryRunner执行sql语句,返回受影响行数为0的问题?

问题描述 RT:我有个线程,每个周期会执行一次这样的sql语句updateabbottPnd..abt_sms_sendtask_list_historysetabt_status=t.status,abt_status_desc=t.smgstatus,abt_report_time=t.donetime,abt_mobile_type=t.carriertypefromabt_sms_sendtask_list_historyainnerjoin(selecttop5000b.status,

如何返回指定行数之间的查询结果?

 如何返回指定行数之间的查询结果?     如何返回指定行数之间的查询结果,以实现web记录分页,在Oracle中有许多的方法,这里仅仅列出了4种,希望能对大家有所帮助,大家可以根据不同需要选择下面的script  1)select ... where rownum < 50 minus select ... where rownum < 30       这个方法因为用到了minus操作符,所以速度会受影响.   2)  SELECT results.* FROM   ( SELECT t2

Entity Framework with MySQL Provider 更新行数为0的Bug

本文将很容易解决的问题搞复杂了,多数情况下将MySql连接字符串中的Use Affected Rows参数设置为true即可. 2012-06-17 作者注.   在使用MySQL数据库来做为Entity Framework的Provider时,有时会遇到如下问题: 存储区更新.插入或删除语句影响到了意外的行数(0).实体在加载后可能被修改或删除.刷新 ObjectStateManager 项. 问题产生的场景可能为: 通常会遇到这样的问题,我们打开编辑界面,然后不更改任何内容,然后点保存,基本

java调用存储过程-Java执行删除/创建临时表的存储过程时,获取的影响行数总是-1,求大师指点

问题描述 Java执行删除/创建临时表的存储过程时,获取的影响行数总是-1,求大师指点 如题所述,使用Java代码执行删除.创建临时表的存储过程时总是执行不成功(不报错, 但是获取的影响行数为-1),别的存储过程都可以执行成功,求大师指点啊, 存储过程和Java代码如下: 1.存储过程代码 ALTER PROCEDURE [dbo].[PROC_TEMP] AS BEGIN if object_id('tempdb..##temp') is not null Begin DROP TABLE #

续《表扫描与索引扫描返回的行数不一致》

续<表扫描与索引扫描返回的行数不一致> 上篇文章主要介绍了如何从分析表得到的报错,以及trace中的信息,判断表返回的记录与索引返回记录不一致时的处理方式.下面这篇文章则介绍了针对ORA-1499进行问题排查的一些基本方法. OERR: ORA-1499 table/Index Cross Reference Failure - see trace file (文档 ID 1499.1) Error: ORA 1499 Text: table/Index Cross Reference Fai

表扫描与索引扫描返回的行数不一致

某个应用最近总出现死锁,其中一些是因为报了索引和数据行存在不匹配的问题,MOS中有如下文档可以参考. ORA-1499. Table/Index row count mismatch(文档 ID 563070.1)现象: 使用"validate structure cascade"分析表时报ORA-1499的错误,trace文件中包含"Table/Index row count mismatch"的错误信息.例如: SQL> analyze table tes

用PHP取Select影响行数的方法

select     由于PHP手册中大多没有提及,所以很多人用了select count(*)去取(前几天提问大家都这么答),而实际应用时这样的方法是很不方便,也非常低效率的...    其实OCI库提供了一个OCIFetchStatement($stmt,$array)的函数,其功能是将$stmt的所有记录装入一个array中,其返回值就是记录总数,也就是我们需要的东东.exp: $RowCount = OCIFetchStatement($stmt,$array);