PHP与MySQL数据库——连接数据、插入数据、删除数据、返回结果集

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 本文章介绍了PHP连接MySQL数据库实现插入数据、删除数据、返回结果集的操作

PHP操作MySQL数据库原理

从根本上来说,PHP是通过预先写好的一系列函数来与MySQL数据库进行通信,向数据库发送指令、接收返回数据等都是通过函数来完成。

image.gif

连接数据mysqli_connect()函数

使用PHP连接MySQL数据库,首先要让PHP程序连接MySQL服务器,再选择一个数据库,然后向MySQL数据库管理系统发送sql语句。

image.gif

连接数据库 MySQLi扩展为PHP与数据库的连接提供了mysqli_connect()函数,其声明方式如下。

mysqli mysqli_connect(
  string $host=ini_get(‘mysqli,default_host’),        //主机名或者IP
  string $username=ini_get(‘mysqli.default_user’),    //用户名
  string $passwd=ini_get(‘mysqli.default_pw`’),       //密码
string $dbname=‘’,                                  //数据库名
  int $port=ini_get(‘mysqli.default_port`’),          //端口号
  string $socket=ini_get(‘mysqli.default_socket`’)    //socket通信
)

image.gif

测试代码如下

<metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/><?php//连接数据库$link=mysqli_connect('localhost','root','','ghw','3306');    
//数据库名字为ghw//查看连接数据库是否正确if($link){
echo"连接数据库成功";
}
else{
echo"连接数据库失败";
}
?>

image.gif

运行

image.gif

表的结构

image.gif

插入数据/删除数据

 选择数据库:mysqli_select_db(数据库名字);

 设置字符集:mysqli_set_charset('utf8');   mysqli_set_charset('utf8');

 发送sql语句:mysqli_query(sql语句);

测试代码如下

<metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/><?php//连接数据库$conn=mysqli_connect('localhost','root','','ghw','3306'); 
$sql="insert into student values('12','eren','男','21','软件技术')";
mysqli_select_db($conn,'ghw');
mysqli_set_charset($conn,'utf8');
$insert=mysqli_query($conn,$sql);
if($insert){
echo'成功插入数据';
}
else{
echo'插入数据失败';
}
?>

image.gif

运行

image.gif

查看 phpmyadmin (表中已有一些数据)

image.gif

删除数据只要把$sql换成删除的sql语句即可

$sql="“delete from `student` where `student`.`s_id` = 12”;

image.gif

返回结果集

由于函数mysqli_query()在执行SELECT、SHOW、EXPLAIN或DESCRIBE的SQL语句后,返回的是一个资源类型的结果集,因此,需要使用函数从结果集中获取信息。

函数名

描述

mysqli_num_rows()

获取结果中的行的数量

mysqli_fetch_all()

获取所有的结果,并以数组方式放回

mysqli_fetch_array()

获取一行结果,并以数组方式返回

mysqli_fetch_assoc()

获取一行结果并以关联数组返回

mysqli_fetch_row()

获取一行结果并以索引数组返回

测试代码如下

<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Document</title></head><style>body{
height: 32rem;
background: linear-gradient(tobottom, #84d6f730%30%, #b2eea5);
    }
table{
margin-top: 16rem;
font-weight: bold;
    }
trtd{
font-weight: bold;
    }
</style><body><?php$conn = mysqli_connect('localhost','root', '');mysqli_select_db($conn,'ghw');// mysqli_query("set s_name utf8"); //设置字符集为utf8mysqli_set_charset($conn,'utf8');$sql = "select * from student";$result = mysqli_query($conn, $sql);?><tablewidth="400"border="3"align="center"cellpadding="0"><tr><tdheight="30"align="center">学号</td><tdheight="30"align="center">姓名</td><tdheight="30"align="center">性别</td><tdheight="30"align="center">年龄</td><tdheight="30"align="center">专业</td></tr><?php$row = mysqli_fetch_row($result);while ($row) {?><tr><tdheight="30"align="center"><?phpecho $row[0]; ?></td><tdheight="30"align="center"><?phpecho $row[1]; ?></td><tdheight="30"align="center"><?phpecho $row[2]; ?></td><tdheight="30"align="center"><?phpecho $row[3]; ?></td><tdheight="30"align="center"><?phpecho $row[4]; ?><ltd></tr><?php$row = mysqli_fetch_row($result);}?></table></body>


运行

image.gif

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
14天前
|
安全 关系型数据库 MySQL
PHP与MySQL交互:从入门到实践
【9月更文挑战第20天】在数字时代的浪潮中,掌握PHP与MySQL的互动成为了开发动态网站和应用程序的关键。本文将通过简明的语言和实例,引导你理解PHP如何与MySQL数据库进行对话,开启你的编程之旅。我们将从连接数据库开始,逐步深入到执行查询、处理结果,以及应对常见的挑战。无论你是初学者还是希望提升技能的开发者,这篇文章都将为你提供实用的知识和技巧。让我们一起探索PHP与MySQL交互的世界,解锁数据的力量!
|
10天前
|
关系型数据库 MySQL 数据库
ORM对mysql数据库中数据进行操作报错解决
ORM对mysql数据库中数据进行操作报错解决
35 2
|
25天前
|
NoSQL 关系型数据库 MySQL
不是 PHP 不行了,而是 MySQL 数据库扛不住啊
【9月更文挑战第8天】这段内容讨论了MySQL在某些场景下面临的挑战及其原因,并指出这些问题不能完全归咎于MySQL本身。高并发读写压力、数据量增长以及复杂查询和事务处理都可能导致性能瓶颈。然而,应用程序设计不合理、系统架构不佳以及其他数据库选择和优化策略不足也是重要因素。综合考虑这些方面才能有效解决性能问题,而MySQL通过不断改进和优化,仍然是许多应用场景中的可靠选择。
|
9天前
|
JavaScript Java 关系型数据库
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
本文介绍了一个基于Spring Boot和Vue.js实现的在线考试系统。随着在线教育的发展,在线考试系统的重要性日益凸显。该系统不仅能提高教学效率,减轻教师负担,还为学生提供了灵活便捷的考试方式。技术栈包括Spring Boot、Vue.js、Element-UI等,支持多种角色登录,具备考试管理、题库管理、成绩查询等功能。系统采用前后端分离架构,具备高性能和扩展性,未来可进一步优化并引入AI技术提升智能化水平。
毕设项目&课程设计&毕设项目:基于springboot+vue实现的在线考试系统(含教程&源码&数据库数据)
|
11天前
|
Java 关系型数据库 MySQL
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
本文介绍了一款基于Spring Boot和JSP技术的房屋租赁系统,旨在通过自动化和信息化手段提升房屋管理效率,优化租户体验。系统采用JDK 1.8、Maven 3.6、MySQL 8.0、JSP、Layui和Spring Boot 2.0等技术栈,实现了高效的房源管理和便捷的租户服务。通过该系统,房东可以轻松管理房源,租户可以快速找到合适的住所,双方都能享受数字化带来的便利。未来,系统将持续优化升级,提供更多完善的服务。
毕设项目&课程设计&毕设项目:springboot+jsp实现的房屋租租赁系统(含教程&源码&数据库数据)
|
6天前
|
存储 API 数据库
QML使用Sqlite数据库存储ListModel数据
本文介绍了在QML中使用Sqlite数据库存储ListModel数据的方法,包括如何创建数据库、读取数据、动态添加和删除数据,以及如何在程序启动和退出时与数据库同步数据。
|
8天前
|
SQL 关系型数据库 数据库连接
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
本文介绍了PHP中PDO(PHP Data Objects)扩展的基本概念和使用方法。内容包括PDO类和PDOStatement类的介绍,PDO的简单使用,预定义占位符的使用方法,以及PDOStatement对象的使用。文章还讨论了绑定预定义占位符参数的不同形式,即bindValue和bindParam的区别。通过具体示例,展示了如何使用PDO进行数据库连接、数据查询、数据插入等操作。
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
|
8天前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
12天前
|
SQL 关系型数据库 MySQL
MySQL C连接与使用
【9月更文挑战第21天】在 MySQL 中,可以通过 C 语言连接和操作数据库。首先需安装 MySQL 服务器及 C 开发库,然后在程序中包含必要头文件,初始化连接对象,并使用实际参数建立连接。执行 SQL 语句时,需替换表名等变量,获取并遍历结果集。最后,释放资源并关闭连接。过程中应注意错误处理、内存管理和安全性,以及性能优化。此方式适用于高效数据存储和检索的应用程序。
|
15天前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
阿里云数据库重磅升级!元数据服务OneMeta + OneOps统一管理多模态数据

热门文章

最新文章

下一篇
无影云桌面