mysql数据表中数据操作(2)

上一课我们讲了在dos界面进行数据表中的数据操作,今天我们讲解如何在PHP代码中来执行那些操作语句。这个执行很简单,我们只需要一个query方法里写入语句就行,看我们之前的数据库链接代码:

复制代码
<?php
$hostname = "localhost";
$username = "root";
$password = "root";
 
$conn = new mysqli($hostname, $username, $password);
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功".PHP_EOL;
?>

插入数据

复制代码
<?php
$hostname = "localhost";
$username = "root";
$password = "root";
 
$conn = new mysqli($hostname, $username, $password);
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功".PHP_EOL;
$isUse = $conn->query("use web;");
$sql = "insert into users(username,password) values ('zsf','123456')";
if($isUse){
  $conn->query($sql);
}
?>

执行以上语句,你就会发现,数据库中插入了一条数据;

更新数据

复制代码
<?php
$hostname = "localhost";
$username = "root";
$password = "root";
 
$conn = new mysqli($hostname, $username, $password);
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功".PHP_EOL;
$isUse = $conn->query("use web;");
$sql = "update users set username='zz' where username='zsf'";
if($isUse){
  $conn->query($sql);
}
?>

执行以上语句,我们就把之前所有username为zsf的更改为了zz;

删除数据

复制代码
<?php
$hostname = "localhost";
$username = "root";
$password = "root";
 
$conn = new mysqli($hostname, $username, $password);
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功".PHP_EOL;
$isUse = $conn->query("use web;");
$sql = "delete from users where id=4";
if($isUse){
  $conn->query($sql);
}
?>

执行以上语句,我们把数据库中id为4的数据给清除了

查询数据

这里可能稍微复杂一些,我们先插入几个数据,以方便测试

复制代码
$hostname = "localhost";
$username = "root";
$password = "root";
 
$conn = new mysqli($hostname, $username, $password);
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
} 
echo "连接成功".PHP_EOL;
$isUse = $conn->query("use web;");
//批量插入数据
$sql = "insert into users (username,password) values ('z','123'),('s','1234'),('f','123456')";
if($isUse){
  $sql = "select * from users";
  $data = $conn->query($sql);
  if($data->num_rows)
  {
      while($row=$data->fetch_assoc()){
          echo "id:".$row['id'].',username:'.$row['username'].',password:'.$row['password'].PHP_EOL;
      }
  }
}

以上会输出如下内容:

复制代码
连接成功
id:6,username:z,password:123
id:5,username:zz,password:123456
id:7,username:s,password:1234
id:8,username:f,password:123456

注:从上面的例子,我们可以看得出来,PHP中操作数据表也是一样的语句,只不过在php语句中,放在了链接标识(conn)的query方法中,例如 conn->query($sql);最后那个是循环输出查询结果,fetch_assoc,类似的还有fetch_row,fetch_object,三都都是获取结果,区别就是返回的格式不一样:

fetch_assoc:返回的是关联数组形式

fetch_row:返回的是索引数组形式

fetch_object:返回的是对象格式;

相关推荐
小陈工3 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
0xDevNull8 小时前
MySQL数据冷热分离详解
后端·mysql
科技小花8 小时前
数据治理平台架构演进观察:AI原生设计如何重构企业数据管理范式
数据库·重构·架构·数据治理·ai-native·ai原生
一江寒逸8 小时前
零基础从入门到精通MySQL(中篇):进阶篇——吃透多表查询、事务核心与高级特性,搞定复杂业务SQL
数据库·sql·mysql
D4c-lovetrain8 小时前
linux个人心得22 (mysql)
数据库·mysql
阿里小阿希9 小时前
CentOS7 PostgreSQL 9.2 升级到 15 完整教程
数据库·postgresql
荒川之神9 小时前
Oracle 数据仓库雪花模型设计(完整实战方案)
数据库·数据仓库·oracle
做个文艺程序员9 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
不吃香菜学java9 小时前
Redis简单应用
数据库·spring boot·tomcat·maven
一个天蝎座 白勺 程序猿9 小时前
Apache IoTDB(15):IoTDB查询写回(INTO子句)深度解析——从语法到实战的ETL全链路指南
数据库·apache·etl·iotdb