当前位置: 首页 > news >正文

数据库---PDO

以pikachu数据库为例,数据库名: pikachu

1.连接数据库

<?php

$dsn = 'mysql:host=localhost; port=3306; dbname=pikachu';   // 这里的空格比较敏感

$username = 'root';

$password = 'root';

try {

        $pdo = new PDO($dsn, $username, $password);

        var_dump($pdo);

}catch(PDOException $e){

        // echo $e->getMessage();

        die('Connection error:'. $e->getMessage());

}

?>

连接成功。 

2. pdo查询

<?php

$dsn = 'mysql:host=127.0.0.1; dbname=pikachu';

$username = 'root';

$pwd = 'root';

$pdo = new PDO($dsn, $username,$pwd); // 连接数据库

$sql = 'select * from users where id=:id';

$stmt = $pdo->prepare($sql);

$stmt->bindValue(':id',1);

$stmt->execute();

$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);

echo '<pre>';

print_r($rows);

$pdo = null;

?>

:id   占位符 

 3.pdo更新

<?php

$dsn = 'mysql:host=127.0.0.1; dbname=pikachu';

$username = 'root';

$pwd = 'root';

$pdo = new PDO($dsn, $username,$pwd);

$sql = 'update users set level="4" where id=:id';

$stmt = $pdo->prepare($sql);

$stmt->bindValue(':id',1);

 stmt->execute();

$pdo = null;

?>

4.pdo插入

 <?php

$dsn = 'mysql:host=127.0.0.1; dbname=pikachu';

$username = 'root';

$pwd = 'root';

$pdo = new PDO($dsn, $username,$pwd);

$sql = 'insert into users(`id`,`username`,`password`,`level`)                                                            values(:id,:username,:password,:level)';

$stmt = $pdo->prepare($sql);

$stmt->bindValue(':id',4);

$stmt->bindValue(':username','Bob');

$stmt->bindValue(':password','e99a18c428cb38d5f260853678922e04');

$stmt->bindValue(':level','5');

     

$stmt->execute();

$id = $pdo->lastInsertId();

echo '<pre>';

var_dump($id);

$pdo = null;

?>

5. pdo删除

<?php

$dsn = 'mysql:host=127.0.0.1; dbname=pikachu';

$username = 'root';

$pwd = 'root';

$pdo = new PDO($dsn, $username,$pwd);

$sql = 'delete from pikachu where id = :id';

$stmt = $pdo->prepare($sql);

$stmt->bindValue(':id',1);

$stmt->execute();

// 返回受影响的行数,删除了多少行。

$rowCount = $stmt->rowCount();

echo '<pre>';

var_dump($rowCount);

$pdo = null;

?>

相关文章:

  • Radio Silence for mac 好用的防火墙软件
  • 探索多种数据格式:JSON、YAML、XML、CSV等数据格式详解与比较
  • Day23:LeedCode 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树
  • 八大技术趋势案例(云计算大数据)
  • RabbitMQ中的交换机
  • Docker版本:18.06.1安装
  • 网络:udptcp套接字
  • Linux shell编程学习笔记42:md5sum
  • 傅立叶之美:深入研究傅里叶分析背后的原理和数学
  • LeetCode 面试经典150题 290.单词规律
  • 虚拟机-从头配置Ubuntu18.04(包括anaconda,cuda,cudnn,pycharm,ros,vscode)
  • 如何调试Clang源码
  • Llama模型下载
  • 双进程交互实现App自动重启
  • 电脑突然死机怎么办?
  • es的写入过程
  • Intervention/image 图片处理扩展包的安装和使用
  • Java,console输出实时的转向GUI textbox
  • js面向对象
  • MobX
  • Python利用正则抓取网页内容保存到本地
  • 理解在java “”i=i++;”所发生的事情
  • 力扣(LeetCode)21
  • 聊聊directory traversal attack
  • 浅谈Golang中select的用法
  • 如何解决微信端直接跳WAP端
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • 从如何停掉 Promise 链说起
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • #考研#计算机文化知识1(局域网及网络互联)
  • (libusb) usb口自动刷新
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (附源码)ssm高校升本考试管理系统 毕业设计 201631
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (三分钟)速览传统边缘检测算子
  • .NET 8.0 发布到 IIS
  • .NET Core工程编译事件$(TargetDir)变量为空引发的思考
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • :“Failed to access IIS metabase”解决方法
  • ??如何把JavaScript脚本中的参数传到java代码段中
  • [ 渗透测试面试篇 ] 渗透测试面试题大集合(详解)(十)RCE (远程代码/命令执行漏洞)相关面试题
  • [1]-基于图搜索的路径规划基础
  • [2016.7.Test1] T1 三进制异或
  • [CareerCup] 6.1 Find Heavy Bottle 寻找重瓶子
  • [C和指针].(美)Kenneth.A.Reek(ED2000.COM)pdf
  • [Deep Learning] 神经网络基础
  • [ERROR] Plugin 'InnoDB' init function returned error
  • [i.MX]飞思卡尔IMX6处理器的GPIO-IOMUX_PAD说明
  • [IE编程] IE8的SDK 下载
  • [IOI2018] werewolf 狼人
  • [java进阶]——方法引用改写Lambda表达式