Blogger Information
Blog 31
fans 0
comment 0
visits 30270
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP数据库入门与PDO的增删改写法
emy
Original
816 people have browsed it

一、PHP数据库介绍

PHP数据库,一般用MySQL较多,是一款开源免费的关系型数据库软件。可视化数据库管理软件有Navicat,PHPMyadmin,adminer等。

二、PDO介绍

PDO(PHP Data Objects)是一种在PHP里连接数据库的使用接口。核心是用于数据库的连接、发送sql语句等。

PDO连接数据库三要素(重要参数):数据源: DSN; 用户名: username;用户密码: password

三、创建数据库,数据表和数据库配置连接文件

1、连接数据库:$pdo = new PDO($dsn, $username, $password);;

DSN: 数据库类型:host=数据库的主机地址;dbname=默认的数据库名称;chart=… ;port= …$dsn = 'mysql:host=localhost;dbname=users';

<?php
// 连接数据库
namespace dali;
use Exception;
use PDO;

// 加载配置参数
$config = require 'data/conn.php';
$type = $config['type'];
$host = $config['host'];
$dbname = $config['dbname'];
$username = $config['username'];
$password = $config['password'];

//数据源
$dsn = $type . ':' . 'host=' . $host . ';dbname=' . $dbname;

try {
// 连接数据库
 $pdo =    new PDO($dsn, $username, $password);
//  var_dump($pdo);
} catch (Exception $e) {
    die($e->getMessage());
}

2、插入语句: $sql = 'INSERT 表名 SET name=?, age=?,.... ';

<?php
        $arr = ['Emy','foshan', 'guangdong', 1589382617];
        array_walk($arr, function(&$item, $key, $length) {
           if ($key < $length-1 )  $item = "'$item'";
        }, count($arr));
        $data = implode(', ', $arr);
        $sql = "INSERT `users` (`name`,`city`,`province`,`add_time`) VALUES ($data)";
        if ($db->query($sql)) {
            if ($db->affected_rows > 0) {
                echo '用户新增成功 ' . $db->affected_rows . ' 条记录, 新增记录主键ID: ' . $db->insert_id;
            } else {
                echo '没有添加新记录';
            }
        } else {
            die('添加失败'. $db->error . ' : ' . $db->error);
        }
    ?>

3、查询语句: $sql = 'SELECT 字段列表 FROM 数据表名称 WHERE 查询条件 ';

<?php
        $sql = 'select * from users ';
        $demo = $db -> query( $sql );
        if ($demo && $demo->num_rows > 0 ) {
        $resl = $demo->fetch_all();
          foreach (demol as $demols) {
              vprintf('<pre>ID=%s;姓名=%s;城市=%s;省份=%s</pre>', $demols);
              }
        } else {
          echo '查询失败';
        }
    ?>

4、更新语句:$sql = "UPDATE 表名 SET 字段=新值 WHERE 更新条件";

<?php
        $arr = ['name'=>'emy', 'city'=>'foshan'];
        array_walk($arr, function(&$item, $key) {
            $item = "`$key` = '$item'";
        });
        $data = implode(', ', $arr);
        $sql = "UPDATE `users` SET " . $data  . " WHERE `id` = 1";
        if ($db->query($sql)) {
            if ($db->affected_rows > 0) {
                echo '成功更新了 ' . $db->affected_rows . ' 条记录';
            } else {
                echo '没有更新任何记录';
            }
        } else {
            die('更新失败'. $db->error . ' : ' . $db->error);
        }
    ?>

5、删除语句:$sql = "DELETE FROM 表名 WHERE 删除条件".

<?php
      $sql = "DELETE FROM `users` WHERE `id` =" . $_GET['id'];
    if ($db->query($sql)) {
        if ($db->affected_rows > 0) {
            echo '成功删除了 id=' .$_GET['id'] . '  的记录';
        } else {
            echo '没有删除任何记录';
        }
    } else {
        die('删除失败'. $db->errno . ' : ' . $db->error);
    }
    ?>

四、总结:这章的内容还是能看明白,如何运用自如,还是需要在实操中加强运用。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

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