• update & delete影响行数,select 返回行数


    <?php
    /** 
    燕十八 公益PHP培训 
    课堂地址:YY频道88354001 
    学习社区:www.zixue.it 
    **/
    
    
    /*
    PHP 操作 mysql的其他几个常用函数
    */
    
    $conn = mysql_connect('localhost','root','111111');
    if(!$conn) {
        echo '连接数据库失败';
        exit;
    }
    
    
    // 选库
    $sql = 'use test';
    mysql_query($sql,$conn);
    
    $id = isset($_GET['id']) ? $_GET['id'] + 0 :0;
    
    
    // 接收id后,我准备删除数据
    $sql = 'delete from stu where id=' . $id;
    
    $rs = mysql_query($sql,$conn);
    
    if($rs) {
        echo '删掉了一行数据<br />';
    } else {
        echo '删数据失败<br />';
    }
    
    
    /*
    严重注意:
    对于增/删/改 来说,返回值 都是true/false2种情况
    
    其中:insert,返回true,数据肯定是插入成功了.
    
    对于update/delete ,即修改/删除来说
    返回为真,代表:这个sql的语法没有问题,执行成功了.
    是从语法角度/执行角度来说的.
    
    但是,未必这个语句能影响到数据,比如你的条件不对.
    
    
    所以,要想真正判断有没有删/改数据,得以实际影响的行数为准 
    那么,在执行delete/update后,如果获取受影响行数?
    答:用函数 mysql_affected_rows
    */
    
    /*
    mysql_affected_rows : 在执行delete/update后立即调用此函数,
    可得到delete/update语句影响的行数.
    */
    
    
    $cnt = mysql_affected_rows($conn);
    if($cnt) {
        echo '删掉了',$cnt,'行数据';
    } else {
        echo '没有数据被删掉';
    }
    
    
    
    // 继承来看,还剩下多少条数据
    echo '<br />';
    
    
    $sql = 'select * from stu';
    $rs = mysql_query($sql,$conn);
    
    /**
    // 这是笨办法,循环一遍
    // 有现在函数可以用
    $num = 0;
    while(mysql_fetch_assoc($rs)) {
        $num++;
    }
    **/
    
    
    /*
    mysql_num_rows , 返回 select 语句的结果行数
    在运行select 之后,立即调用mysql_num_rows 可以得到这次select的行数
    */
    
    $num = mysql_num_rows($rs);
    echo '还剩下',$num,'条数据';
    
    
    ?>
  • 相关阅读:
    我的Firefox
    九成偏股基金净值增长弱于大盘 仅18只跑赢指数
    大事记:
    Symantec AntiVirus企业版(接受管理)客户机端卸载方法
    CDP
    两行代码解决iOS上拉下拉时,底部栏顶部栏跟随手势滚动
    8Windows概要
    4断点和单步执行
    win7下windbg本机内核调试
    windbg技巧看和改标志位创建进程时断下
  • 原文地址:https://www.cnblogs.com/zy2012/p/2811693.html
Copyright © 2020-2023  润新知