PHP MySQL查询数据



  • PHP MySQL插入数据

    要插入数据,您应该具有管理员权限。它很容易插入一条新的数据。使用mysqli_query函数执行SQL语句。此函数接受三个参数,成功时返回结果集对象,失败时返回FALSE。
    mysqli_query( $link, $query [, $resultmode= MYSQLI_STORE_RESULT ])
    
    
    注意:如果您将语句传递给mysqli_query(),该语句的长度超过服务器的max_allowed_pa​​cket,则返回的错误代码会有所不同,具体取决于您使用的是MySQL本机驱动程序(mysqlnd)还是MySQL客户端库(libmysqlclient)。行为如下:
    • Linux上的mysqlnd返回错误代码1153.错误消息表示获得的数据包大于max_allowed_pa​​cket字节。
    • Windows上的mysqlnd返回错误代码2006.此错误消息表示服务器已消失。
    • 所有平台上的libmysqlclient都会返回错误代码2006.此错误消息表示服务器已消失。
    参数 说明
    $link 由mysqli_connect() 或 mysqli_init() 返回的链接标识。
    $query 查询字符串。应正确转义查询中的数据。
    $resultmode 常数MYSQLI_USE_RESULT或MYSQLI_STORE_RESULT取决于所需的行为。默认情况下,使用MYSQLI_STORE_RESULT。如果你使用MYSQLI_USE_RESULT所有后续调用将返回错误命令不同步,除非你调用mysqli_free_result()使用MYSQLI_ASYNC(可与mysqlnd一起使用),可以异步执行查询。 然后使用mysqli_poll()来获取此类查询的结果。

    查询数据

    最常用的选项是使用函数mysqli_fetch_array()。此函数将行作为关联数组,数字数组或两者返回。如果没有更多行,则此函数返回FALSE。
    <?php
    $link = mysqli_connect('mysql', 'test', '123456','test');
    
    if (!$link) {
    die('连接错误 (' . mysqli_connect_errno() . ') '
    . mysqli_connect_error());
    }
    
    echo '成功连接... ' . mysqli_get_host_info($link) . "<br/>";
    
    // 查询test库的test表查询name字段
    $sql = "SELECT `name` FROM `test`";
    
    $result1 = mysqli_query($link,$sql);
    $result2 = mysqli_query($link,$sql);
    $result3 = mysqli_query($link,$sql);
    if ($result1) {
        /* 以数字数组返回结果集 */
        echo '以数字数组返回结果集<br/>';
        while ($row = mysqli_fetch_array($result1, MYSQLI_NUM)) {
            print_r($row);
            echo "<br/>";
        }
    }
    
    if ($result2) {
        /* 以关联数组返回结果集 */
        echo '以关联数组返回结果集<br/>';
        while ($row = mysqli_fetch_array($result2, MYSQLI_ASSOC)){
            print_r($row);
            echo "<br/>";
        }
    }
    
    if ($result3) {
        /* 以关联数组和数字数组返回结果集 */
        echo '以关联数组和数字数组返回结果集<br/>';
        while ($row = mysqli_fetch_array($result3, MYSQLI_BOTH)){
            print_r($row);
            echo "<br/>";
        }
    }
    
    
    
    /* 释放结果集 */
    mysqli_free_result($result1);
    mysqli_free_result($result2);
    mysqli_free_result($result3);
    
    
    
    mysqli_close($link);  // 关闭数据库链接
    ?>
    
    
    注意:查询结束后记得用mysqli_free_result()函数释放结果集,和用mysqli_close()关闭数据库资源句柄。