• 技术文章 >数据库 >mysql教程

    有关mysql中ROW_COUNT()的小例子_MySQL

    2016-06-01 13:23:49原创563
    bitsCN.com

    注:mysql中的ROW_COUNT()可以返回前一个SQL进行UPDATE,DELETE,INSERT操作所影响的行数。

    MySQL上的测试(数据库版本为:5.1.22):

    1.创建数据库表:

    create table t(
    id int,
    name varchar(50),
    address varchar(100),
    primary key(id,name)
    )engine =InnoDB;

    2.插入测试数据:

    insert into t
    (id,name,address)
    values
    (1,'yubowei','weifang'),
    (2,'sam','qingdao');

    3.更新:

    update t set address = 'weifang'
    where id = 1 and name = 'yubowei';

    此时查看影响的行数:
    select row_count(); ==〉执行结果为0;

    4.再更新:

    update t set address = 'beijing'
    where id = 1 and name = 'yubowei';

    此时查看影响的行数:
    select row_count(); ==〉执行结果为1;
    从上面的测试可以得出在MySQL中只有真正对记录进行修改了的情况下,row_count才会去记录影响的行数,否则如果记录存在但是没有实际修改则不会将该次更新记录到row_count中。

    备注:
    今天用PREPARE动态处理了UPDATE语句后,发现ROW_COUNT()函数返回的老是-1 ,检查了下原来是把row_count()放到了deallocate 语句后面了。
    神一般的我,犯了这样的错,哈。

    bitsCN.com
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:数据库表 mysql 影响
    上一篇:apache中访问不了伪静态页面的解决方法_MySQL 下一篇:mysql性能优化脚本mysqltuner.pl使用介绍_MySQL
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 实例详解MySQL数据库视图• 浅析mysql设置最大连接数的两种方法• MySQL外键约束知识点总结• MySQL数据库JDBC编程知识点总结• MySQL学习之聊聊InnoDB中锁的情况
    1/1

    PHP中文网