博客列表 >PDO中操作数据表的基本步骤

PDO中操作数据表的基本步骤

坏人也温柔de陈词滥调
坏人也温柔de陈词滥调原创
2019年07月30日 15:24:15682浏览

实例

写出常用的CURD语句的基本语法:

CURD即增删改查操作

1、新增数据 INSERT

语法:INSERT INTO '表名' ('字段1', '字段2' ...)  VALUES ('值1', '值2' ...)

2、更新记录 UPDATE

语法:UPDATE `数据表` SET `字段1`=`值1`,`字段2`=`值2`...WHERE 更新条件

3、删除数据 DELETE 

语法:DELETE FROM '表名' WHERE 删除条件

4、查询操作 SELECT

语法:SELECT '字段列表' FROM '表名' WHERE 查询条件

  公共部分  数据库的链接

 database.php

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

运行实例 »

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

  connect.php

实例

<?php
//连接数据库:pdd
//$dsn='数据库的类型:host=数据库主机名;dbname=默认数据库名称';
$dsn = "{$db['type']}:host={$db['host']};dbname={$db['dbname']}";
$db="{$db['type']}:host={$db['host']};dbname={$db['dbname']}";
$username=$db['username];
$password=$db['password];
ry {
    $pdo = new PDO($dsn, $db['username'], $db['password']);
} catch (PDOException $e) {
    die('数据库连接失败:' . $e->getMessage());
}

运行实例 »

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

insert 新增数据操作

实例

<?php

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

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

// 3. 创建SQL语句对象: 预处理对象
$stmt = $pdo->prepare($sql);
//var_dump($stmt); // PDOStatement

// 4. 给SQL语句模板中的变量绑定值
$name = 'qz';
$alias = '全职高手';
$stmt->bindParam(':name', $name, PDO::PARAM_STR);
$stmt->bindParam(':alias', $alias, PDO::PARAM_STR);

// 5. 执行SQL语句
if ($stmt->execute()) {
    // $stmt->rowCount(): 返回新增的记录数量
    if ($stmt->rowCount() > 0 ) {
        echo '成功的添加' . $stmt->rowCount(). '条记录, 主键:'. $pdo->lastInsertId();
    }
}else {
    die('<pre>'. print_r($stmt->errorInfo(), true));
}


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

运行实例 »

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

QQ图片20190730145324.png

简化insert

实例

<?php

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

// 2. 创建SQL语句对象: 预处理对象
$stmt = $pdo->prepare('INSERT INTO `category` SET `name`= :name, `alias`= :alias');

// 3. 执行SQL语句
$stmt->execute(['name'=>'happy', 'alias'=>'大家开心']);
echo '成功的添加' . $stmt->rowCount(). '条记录, 主键:'. $pdo->lastInsertId();

// 4. 关闭连接: 可选
//$pdo = null;

运行实例 »

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

QQ图片20190730145841.png

update 更新数据操作

实例

<?php
// 更新操作
// 1. 连接数据库
require __DIR__ . '/inc/connect.php';
// 2. 创建SQL语句对象: 预处理对象
$stmt = $pdo->prepare('UPDATE `category` SET `name`= :name, `alias`= :alias WHERE `id`=:id');
// 3. 执行SQL语句
$stmt->execute(['name'=>'hy', 'alias'=>'虎牙直播', 'id'=>5]);
echo '成功的更新' . $stmt->rowCount() . '条记录';
// 4. 关闭连接: 可选
$pdo = null;

运行实例 »

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

删除操作

实例

<?php
//  删除操作

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

//  2、创建sql语句
$stmt = $pdo->prepare('DELETE FROM `category` where `id`= :id');

//  3、执行sql语句
$stmt->execute(['id'=>6]);
echo '成功删除' . $stmt->rowCount() .'条记录';

//  4、关闭连接:可选
$pdo =null;

运行实例 »

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

查询操作 SELECT

实例

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

// 2. 创建SQL语句对象: 预处理对象
$stmt = $pdo->prepare('SELECT * FROM `movies` WHERE `id`=:id');

// 3. 执行SQL语句
$stmt->execute(['id'=> 1]);  // 获取结果集
//
$stmt->bindColumn('name', $name);
$stmt->bindColumn('find', $find);

// 4.遍历
while ($stmt->fetch(PDO::FETCH_ASSOC)) {
    echo '简称: ' . $name, '<br>别名:  ' . mb_substr($find,0, 5).'<hr>';
}

// 4. 关闭连接: 可选
$pdo = null;

运行实例 »

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


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议