三种PHP连接MySQL数据库的方法

#######################
### Mysqli(面向过程) ###
#######################
// localhost数据库服务器(host)   root数据库用户名(user)   password数据库密码(password)   database数据库名(database)
$conn = mysqli_connect('localhost', 'root', 'password', 'database'); // 连接数据库

// 连接数据库错误提示
if (mysqli_connect_errno($conn)) {
    die("连接 MySQL 失败: " . mysqli_connect_error());
}

mysqli_query($conn, "set names utf8"); // 数据库编码格式

// mysqli_set_charset($conn, "utf8"); // 设置默认客户端字符集。
// mysqli_select_db($conn, 'database_2'); // 更改连接的默认数据库

//查询代码
$sql = "select * from db_table";

$query = mysqli_query($conn, $sql);

while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
    echo '<pre>';
    print_r($row);
}

// 释放结果集 关闭MySQL数据库连接
mysqli_free_result($query);
mysqli_close($conn);

#######################
### Mysqli(面向对象) ###
#######################
$conn = new mysqli('localhost', 'root', 'password', 'database');

if ($conn->connect_errno) {
    printf("Connect failed: %s\n", $conn->connect_error);
    exit();
}

// 查询代码
$sql = "select * from db_table";

$query = $conn->query($sql, MYSQLI_USE_RESULT);

while ($row = $query->fetch_array()) {
    echo '<pre>';
    print_r($row);
}

// 释放结果集 关闭MySQL连接
$query->free_result();
$conn->close();

#########################
### PDO连接MySQL数据库 ###
#########################
$serve = 'mysql:host=数据库地址;dbname=数据库名; charset=utf8';
$username = 数据库帐号;
$password = 数据库密码; 
$pdo = new PDO($serve, $username, $password);
// $pdo = new PDO('mysql:host=localhost; dbname=数据库名; charset=utf8', '数据库帐号', '数据库密码');

// 插入(新增)数据
$user_id = rand(10000, 99999);
$username = rand(10000, 99999);
$password = rand(10000, 99999);
$login = rand(10000, 99999);
try {
    $sql = "INSERT INTO `uco_user` (`user_id`, `username`, `password`, `expiry` ,`login`) VALUES ({$user_id}, '$username', '$password', '" . time() . "', '$login')";
    // 成功返回结果条数
    $res = $pdo->exec($sql);
} catch (Exception $e) {
    $pdo->rollBack();
    echo "Failed: " . $e->getMessage();
}

if ($res) {
    var_dump('成功插入' . $res . '条数据');
    // 插入成功后返回插入数据的ID
    var_dump($pdo->lastinsertid());
} else {
    var_dump('插入失败');
}


// 更新(修改)数据
try {
    $sql = "UPDATE `uco_user` SET `user_id`={$user_id} WHERE `login` = 91903";
//    $sql = "UPDATE `uco_user` SET `user_id`={$user_id} WHERE `login` LIKE 91903";
// 成功返回结果条数
    $res = $pdo->exec($sql);
} catch (Exception $e) {
    $pdo->rollBack();
    echo "Failed: " . $e->getMessage();
}
if ($res) {
    // 更新条数
    var_dump('成功更新' . $res . '条数据');;
} else {
    var_dump('更新失败');
}


// 删除数据
try {
    $sql = "DELETE FROM `uco_user` WHERE `login` = 58834";
//    $sql = "DELETE FROM `uco_user` WHERE `login` LIKE 58834";
    $res = $pdo->exec($sql);
} catch (Exception $e) {
    $pdo->rollBack();
    echo "Failed: " . $e->getMessage();
}
if ($res) {
    // 删除条数
    var_dump('成功删除' . $res . '条数据');
} else {
    var_dump('删除失败');
}


// 查询数据
try {
    $sql = "SELECT * FROM `uco_user` WHERE `login` = 91903";
//$sql = "SELECT * FROM `uco_user` WHERE `login` LIKE 91903";
    $res = $pdo->query($sql);
    $data = [];
    while ($row = $res->fetchAll(PDO::FETCH_ASSOC)) {
//    while ($row = $res->fetch(PDO::FETCH_ASSOC)) {
        $data = $row;
    }
} catch (Exception $e) {
    $pdo->rollBack();
    echo "Failed: " . $e->getMessage();
}

echo '<pre>';
var_dump($data);

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

withoutfear

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值