Blogger Information
Blog 45
fans 0
comment 1
visits 33075
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PDO操作步骤
源逸
Original
873 people have browsed it
  1. 配置DSN数据源连接参数

  2. 连接数据库

       增,删,改,查

    1.连接数据库

    2.设置SQL语句

    3.创建预处理对象

    4.绑定参数

    5.执行SQL操作

    6.关闭连接

注意:如果是查询操作,需要在第五步(执行SQL操作)后面遍历查询到的数据

注意:更新和删除,必须要有条件

实例(database.php)

<?php
//配置数据库连接参数
return [
    'type'      =>      'mysql',
    'host'      =>      '127.0.0.1',
    'dbname'    =>      'php',
    'username'  =>      'root',
    'password'  =>      'root'
];

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例(connect.php)

<?php
//加载配置参数
$db = require 'database.php';

//设置数据源
$dsn = "{$db['type']}:host={$db['host']};dbname={$db['dbname']}";

//连接数据库
try{
    $pdo = new PDO($dsn,$db['username'],$db['password']);
}catch (PDOException $e){
    die('Connect Failed:'.$e->getMessage());
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例(增)

<?php
//1.连接数据库
require __DIR__ . '/inc/connect.php';

//2.创建sql语句模板
$sql = 'INSERT INTO `category` SET  `name` = :name, `alias` = :alias';

//3.创建sql语句对象
$stmt = $pdo -> prepare($sql);

//4.绑定变量到sql语句中
$name = 'zn';
$alias = '宅男福利';
$stmt -> bindParam('name',$name,PDO::PARAM_STR);
$stmt -> bindParam('alias',$alias,PDO::PARAM_STR);

//5.执行sql操作
if($stmt -> execute()){
    if($stmt -> rowCount() > 0){
        echo '成功添加' . $stmt -> rowCount() . '条记录,该记录主键为:' . $pdo->lastInsertId();
    }
}else{
    die('<pre>' . print_r($stmt -> errorInfo(),true));
}

//6.关闭连接
$pdo = null;

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例(删)

<?php
//1.连接数据库
require __DIR__ . '/inc/connect.php';

//2.创建sql语句
$sql = 'DELETE FROM `category` WHERE `cate_id` = :cate_id';

//3.创建预处理对象
$stmt = $pdo -> prepare($sql);
//4.绑定参数
$cate_id = 7;
$stmt->bindParam('cate_id',$cate_id,PDO::PARAM_INT);
//5.执行sql操作
if($stmt->execute()){
    if($stmt->rowCount() > 0){
        echo "成功删除:" . $stmt->rowCount() . '记录';
    }
}else{
    die('<pre>' . print_r($stmt->errorInfo(),true));
}

//6.关闭连接
$pdo = null;

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例(改)

<?php
//1.连接数据库
require __DIR__ . '/inc/connect.php';

//2.创建sql语句
$sql = 'UPDATE `category` SET `name` = :name ,`alias` = :alias WHERE `cate_id` =:cate_id';
//3.创建与处理对象
$stmt = $pdo -> prepare($sql);
//4.绑定参数
$name = 'xd';
$alias = '是兄弟就来打我';
$cate_id = 8;
$stmt->bindParam('name',$name,PDO::PARAM_STR);
$stmt->bindParam('alias',$alias,PDO::PARAM_STR);
$stmt->bindParam('cate_id',$cate_id,PDO::PARAM_INT);
//5.执行sql操作
if($stmt->execute()){
    if($stmt->rowCount() > 0){
        echo "成功更新了:" . $stmt->rowCount() . '记录';
    }
}else{
    die('<pre>' . print_r($stmt->errorInfo(),true));
}
//6.关闭连接
$pdo = null;

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例(查)

<?php
//1.连接数据库
require __DIR__ . '/inc/connect.php';

//2.创建sql语句
$sql = 'SELECT * FROM `movies` WHERE `cate_id` = :cate_id';

//3.创建预处理对象
$stmt = $pdo -> prepare($sql);
//4.绑定参数
$cate_id = 2;
$stmt->bindParam('cate_id',$cate_id,PDO::PARAM_INT);
//5.执行操作
$stmt->execute();
//6.遍历
//bindColumn():将结果集中的记录字段,绑定到指定的变量中
$stmt -> bindColumn('name',$name);
$stmt -> bindColumn('detail',$detail);

while($stmt -> fetch(PDO::FETCH_ASSOC)){
    $detail = mb_substr($detail,0,20,'utf-8');
    echo '片名:' . $name . '<br>' . '简介:' . $detail . '...<hr>';
}

//7.关闭连接
$pdo = null;

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post