使用MySQLi 面象对象方式进行数据库连接与操作
1-1. 操作步骤, 1.配置连接参数 2.创建连接对象 3.判断是否连接成功 4.选择默认数据库 5.设置默认编码集
具体如下:
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/4/26 * Time: 2:25 */ //Mysql 面向对象方式连接数据库 //1.连接参数配置 $db_host = '127.0.0.1'; $db_user = 'root'; $db_pass = 'root'; $db_name = 'php'; $db_char = 'utf8'; //2.创建连接 对象 $conn = @new mysqli($db_host,$db_user,$db_pass); //3.判断是否连接成功 if($conn->connect_error){ exit('Connect Error!'.$conn->connect_errno.':'.$conn->connect_error); } //4.选择默认数据库 $conn->select_db($db_name); //5.设置默认字符编码集 $conn->set_charset($db_char);
使用MySQLi 的方式并使用预处理创建对象进行更新数据:
<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/4/26 * Time: 3:02 */ //1.连接数据库 require 'obj_conn.php'; //2.创建 sql 语句 $sql = "UPDATE staff SET salary=5500 WHERE name=?"; //3.创建预处理对象 $stmt = $conn->stmt_init(); //4.检测 stmt 预处理语句 if($stmt->prepare($sql)){ //绑定参数 $stmt->bind_param('s',$name); $name='宋青书'; }else{ exit($stmt->errno.':'.$stmt->error); } //5.执行 预处理语句 $stmt->execute(); //6.执行完成判断是否成功 if($stmt->affected_rows>0){ echo '更新成功'.$stmt->affected_rows.'条记录'; }else{ echo '没有更新记录'; } //6.注销 stmt 对象 $stmt->close(); //7.关闭数据库连接 mysqli_close($conn);
使用 PDO 对象方式进行数据库操作
//PDO预处理主要使用PDOStatement对象
//该对象是通过: $pdo->prepare()方法创建
//读写操作都可以通过:$pdoStmt->execute()方法进行
//预处理SQL语句句中的占位符除可以使用?号之外,还可以使用命名参数,例如:name:email...
//下面新增数据为例进行演示,共分6步:
//1.连接数据库,创建PDO对象
//2.准备预处理SQL语句,占位符使用命名参数格式:
//3.创建PDO预处理对象: PDOStatement的实例
//4. 绑定参数到SQL语句对象,预预处理对象
//5. 执行新增操作(PDO中,读写都用execute())
//6. 销毁PDO对象(可选)
使用PDO对象对数据进行删除:
//1.创建PDO数据库连接对象 //简写方式 $pdo = new PDO('mysql:dbname=php', 'root', 'root'); $dsn = 'mysql:host=localhost;dbname=php;charset=utf8;port=3306'; //创建数据库连接 $pdo = new PDO($dsn,'root','root'); try{ //创建预处理 sql 对象 $stmt = $pdo->prepare("DELETE FROM staff WHERE name=:name"); //绑定参数到预处理语句的参数中并执行 $stmt ->execute(['name'=>'小龙女']); //得到受影响的行数,判断是否大于0 if($stmt->rowCount()>0){ echo '成功删除了'.$stmt->rowCount().'条记录'; }else{ echo '没有记录被删除'; } }catch (PDOException $e){ echo 'Connect ERROR!'.$e->getMessage(); //抛出异常 die(); //停止脚本执行 } //断开 PDO 连接 $pdo=null;