iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >PHP基础知识 - PHP 使用 MySQLI
  • 440
分享到

PHP基础知识 - PHP 使用 MySQLI

phpmysql数据库 2023-09-02 14:09:13 440人浏览 泡泡鱼
摘要

一、PHP 使用 MysqlI 列举一些常用的 mysqlI 使用方法。本文需要你提前了解一些基本的 Mysql 增删改查语句 知识。 本文不作任何安全或验证方面的处理, 只列举示例。 1

一、PHP 使用 MysqlI

列举一些常用的 mysqlI 使用方法。本文需要你提前了解一些基本的 Mysql 增删改查语句 知识。


本文不作任何安全或验证方面的处理, 只列举示例。

1.0 MySQLI 执行 MySQL 语句

# 使用 query() 方法运行 MySQL 语句对象->query($sql_string);

1.1 连接 MySQL 与创建数据库与数据表

# 本文不作任何安全或验证方面的处理, 只记录每个命令的功能。$server_name = '127.0.0.1'; # 主机名或主机 IP$username = 'root'; # MySQL 用户名$passWord = 'root'; # MySQL 用户密码$db_name = 'test'; # 测试数据库# 1. 创建 mysqli 实例, 连接 MySQL 数据库$connect_obj = new mysqli($server_name, $username, $password);# 连接错误码与错误原因if ($connect_obj->connect_error){    die("连接 MySQL 失败, 错误代码: " . $connect_obj->connect_errno . ', 错误描述: ' . $connect_obj->connect_error);}# 2. 创建数据库$create_database_sql = "CREATE DATABASE {$db_name}";$create_database_result = $connect_obj->query($create_database_sql);# 3. 选择数据库$select_db_result = $connect_obj->select_db($db_name);# 4. 创建数据表$create_table_sql = "CREATE TABLE `user` (          `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户的ID',          `user_name` varchar(140) NOT NULL DEFAULT '0' COMMENT '姓名',          `password` varchar(120) NOT NULL COMMENT '登录密码',          `sex` varchar(30) DEFAULT NULL COMMENT '性别',          `creattime` varchar(40) NOT NULL COMMENT '创建时间',          `is_del` enum('YES','NO') DEFAULT 'NO',          PRIMARY KEY (`id`)        ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='用户表';";$create_table_result = $connect_obj->query($create_table_sql);

1.2 字符集操作

MySQL 常见字符集有五种: BGKUTF8utf8mb4GB2312Latin1

# 设置默认字符集$cahrset_result = $connect_obj->set_charset('utf8');# 获取默认字符集$character_set_name = $connect_obj->character_set_name();

1.3 新增操作

$insert_sql = "INSERT INTO user (user_name, password, sex, creattime) VALUES ('Leslie','123456','MAN','1658569655')"; # SQL 语句$insert_result = $connect_obj->query($insert_sql); # 执行 SQL 语句$inseret_id = $connect_obj->insert_id; # 获取新插入数据的自增 ID

1.4 删除操作

$delete_sql = "DELETE FROM user WHERE id < 5"; # 删除功能的 SQL 语句$delete_result = $connect_obj->query($delete_sql); # 执行 SQL 语句$delete_affected_rows = $connect_obj->affected_rows; # 获取最近一条 SQL 语句执行后所影响的行数

1.5 修改操作

$update_sql = "UPDATE user SET user_name = 'Chon' WHERE id = 6"; # 删除功能的 SQL 语句$update_result = $connect_obj->query($update_sql); # 执行 SQL 语句$update_affected_rows = $connect_obj->affected_rows; # 获取最近一条 SQL 语句执行后所影响的行数

1.6 查询操作

# 先获取查询结果$select_all_sql = "SELECT * FROM user where id > 10";$select_all_result = $connect_obj->query($select_all_sql); # 执行 SQL 语句

1.6.1 获取多条数据

$assoc_all = mysqli_fetch_all($select_all_result, MYSQLI_ASSOC); # 从结果集中取所有行, 以关联数组返回$num_all = mysqli_fetch_all($select_all_result, MYSQLI_NUM); # 从结果集中取所有行, 以索引数组返回

1.6.2 获取单条数据

# 1. 对象格式$obj_row = mysqli_fetch_object($select_all_result); # 从结果集中取当前行, 以对象格式返回# 2. 数组格式 - 关联数组或索引数组$assoc_row_1 = mysqli_fetch_assoc($select_all_result); # 从结果集中取当前行, 以关联数组返回$num_row_1 = mysqli_fetch_row($select_all_result); # 从结果集中取当前行, 以索引数组返回# 3. 数组格式 - 关联数组或索引数组$assoc_row_2 = mysqli_fetch_array($select_all_result, MYSQLI_ASSOC); # 从结果集中取当前行, 以关联数组返回$num_row_2 = mysqli_fetch_array($select_all_result, MYSQLI_NUM); # 从结果集中取当前行, 以索引数组返回

1.6.3 获取结果集总数量

$rows_num = mysqli_num_rows($select_all_result);

1.6.4 数据处理

# 常用结果集处理方式, 循环结果集, 一行行处理# 关联数组格式处理方式, mysql_fetch_assoc 可用 1.6.2 中其它数据获取方式替换while ($row_array = mysqli_fetch_assoc($select_all_result)){    # 数据的一些处理}# 对象格式处理方式while ($row_object = mysqli_fetch_object($select_all_result)){    # 数据的一些处理}

1.6.5 释放结果内存

mysqli_free_result($select_all_result);

1.7 事务操作

# 事务 - 第一步: 关闭自动提交$connect_obj->autocommit(0); # 关闭自动提交# 事务 - 第二步: CUD 等操作$result = "SQL 操作"    # 事务 - 第三步: 提交事务或回滚事务if ($result){    # 如果运行结果正确, 则提交事务$connect_obj->commit();} else {    # 如果错误则回滚事务$connect_obj->rollback();}# 事务 - 第四步: 开启自动提交$connect_obj->autocommit(1);

1.8 获取其它信息

# 返回 MySQL 客户端库版本$client_info = $connect_obj->get_client_info();# 返回 MySQL 服务器端版本$server_info = $connect_obj->get_server_info();

1.9 关闭 MySQL 连接

# 关闭先前的 MySQL 连接$close_result = $connect_obj->close();

二、实例代码

php# 本文不作任何安全或验证方面的处理, 只列举示例。$server_name = '127.0.0.1'; # 主机名或主机 IP$username = 'root'; # MySQL 用户名$password = 'root'; # MySQL 用户密码$db_name = 'test'; # 测试数据库名# 1. 创建 mysqli 实例, 连接 MySQL 数据库$connect_obj = new mysqli($server_name, $username, $password);# 错误码与错误原因if ($connect_obj->connect_error){    die("连接 MySQL 失败, 错误代码: " . $connect_obj->connect_errno . ', 错误描述: ' . $connect_obj->connect_error);}# 2. 创建数据库# 3. 选择数据库$select_db_result = $connect_obj->select_db($db_name);# 4. 创建数据表# 新增操作$insert_sql = "INSERT INTO user (user_name, password, sex, creattime) VALUES ('Leslie','123456','MAN','1658569655')"; # SQL 语句$insert_result = $connect_obj->query($insert_sql); # 执行 SQL 语句$inseret_id = $connect_obj->insert_id; # 获取新插入数据的自增 ID# 删除操作$delete_sql = "DELETE FROM user WHERE id < 5"; # 删除功能的 SQL 语句$delete_result = $connect_obj->query($delete_sql); # 执行 SQL 语句$delete_affected_rows = $connect_obj->affected_rows; # 获取最近一条 SQL 语句执行后所影响的行数# 修改操作$update_sql = "UPDATE user SET user_name = 'Chon' WHERE id = 6"; # 删除功能的 SQL 语句$update_result = $connect_obj->query($update_sql); # 执行 SQL 语句$update_affected_rows = $connect_obj->affected_rows; # 获取最近一条 SQL 语句执行后所影响的行数# 查询操作 - 开始# 查询数据$select_all_sql = "SELECT * FROM user where id > 10";$select_all_result = $connect_obj->query($select_all_sql); # 执行 SQL 语句# 1. 获取多条数据# $assoc_all = mysqli_fetch_all($select_all_result, MYSQLI_ASSOC); # 从结果集中取所有行, 以关联数组返回# $num_all = mysqli_fetch_all($select_all_result, MYSQLI_NUM); # 从结果集中取所有行, 以索引数组返回# 2. 获取单条数据# 1. 对象格式# $obj_row = mysqli_fetch_object($select_all_result); # 从结果集中取当前行, 以对象格式返回# 2. 数组格式 - 关联数组或索引数组# $assoc_row_1 = mysqli_fetch_assoc($select_all_result); # 从结果集中取当前行, 以关联数组返回# $num_row_1 = mysqli_fetch_row($select_all_result); # 从结果集中取当前行, 以索引数组返回# 3. 数组格式 - 关联数组或索引数组# $assoc_row_2 = mysqli_fetch_array($select_all_result, MYSQLI_ASSOC); # 从结果集中取当前行, 以关联数组返回# $num_row_2 = mysqli_fetch_array($select_all_result, MYSQLI_NUM); # 从结果集中取当前行, 以索引数组返回# 3. 获取结果集总数量$num_rows = mysqli_num_rows($select_all_result);# 4. 数据处理# 常用结果集处理方式, 循环结果集, 一行行处理# 关联数组格式处理方式, mysql_fetch_assoc 可用 1.6.2 中其它数据获取方式替换while ($row_array = mysqli_fetch_assoc($select_all_result)){    # 数据的一些处理}# 对象格式处理方式while ($row_object = mysqli_fetch_object($select_all_result)){    # 数据的一些处理}# 5. 释放结果内存mysqli_free_result($select_all_result);# 查询操作 - 结束# 事务 - 开始# 事务 - 第一步: 关闭自动提交$connect_obj->autocommit(0); # 关闭自动提交# 事务 - 第二步: CUD 等操作$result = "SQL 操作";# 事务 - 第三步: 提交事务或回滚事务if ($result){    # 如果运行结果正确, 则提交事务    $connect_obj->commit();} else {    # 如果错误则回滚事务    $connect_obj->rollback();}# 事务 - 第四步: 开启自动提交$connect_obj->autocommit(1);# 事务 - 结束# 返回 MySQL 客户端库版本$client_info = $connect_obj->get_client_info();# 返回 MySQL 服务器端版本$server_info = $connect_obj->get_server_info();# 关闭先前的 MySQL 连接$close_result = $connect_obj->close();

来源地址:https://blog.csdn.net/qq_35453862/article/details/125960324

您可能感兴趣的文档:

--结束END--

本文标题: PHP基础知识 - PHP 使用 MySQLI

本文链接: https://www.lsjlt.com/news/390898.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PHP基础知识 - PHP 使用 MySQLI
    一、PHP 使用 MySQLI 列举一些常用的 MySQLI 使用方法。本文需要你提前了解一些基本的 MySQL 增删改查语句 知识。 本文不作任何安全或验证方面的处理, 只列举示例。 1...
    99+
    2023-09-02
    php mysql 数据库
  • PHP基础知识介绍
    php中的整形数是有符号的,不能表示无符号整数,当整形数超出范围时,会自动从整形数转化成float数,可以用php_int_size常量来查看php整数类型所占字节,一般为4个字节,...
    99+
    2022-11-15
    PHP 基础知识
  • PHP基础知识详细讲解
    目录一、简介二、php基本语法三、变量和作用域四、常量五、数据类型六、运算符七、流程控制八、超全局变量一、简介 基础知识: 需要一定的html和css的语法知识 基本概念: PHP(...
    99+
    2022-12-03
    PHP基础知识 PHP基础语法
  • PHP数组基础知识解析
    PHP数组基础知识解析 在PHP中,数组是一种非常重要且常用的数据类型,可以存储多个值并通过索引或键来访问这些值。本文将从基础开始,介绍PHP数组的使用方法和一些常见操作,同时会提供具...
    99+
    2024-03-13
    php 数组 基础 键值对
  • PHP基础语法知识有哪些
    本篇内容主要讲解“PHP基础语法知识有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP基础语法知识有哪些”吧!转义到PHPPHP解析引擎需要一种方法来区分PHP代码和页面中的其他元素。这...
    99+
    2023-06-04
  • PHP面试题基础知识有哪些
    这篇文章主要介绍“PHP面试题基础知识有哪些”,在日常操作中,相信很多人在PHP面试题基础知识有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP面试题基础知识有哪些”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-29
  • PHP中泛型的基础知识有哪些
    这篇“PHP中泛型的基础知识有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“PHP中泛型的基础知识有哪些”文章吧。PHP...
    99+
    2023-06-29
  • Android 基础知识之 VelocityTracker使用
    VelocityTracker是Android中用于追踪触摸事件速度的工具。它可以用于计算触摸事件的速度和加速度,从而用于实现一些手...
    99+
    2023-09-14
    Android
  • python3基础知识
    字符串截取:利用下标进行截取py_str = 'python'len(py_str)py_str[:3] py_str + '123''python123'py_str * 3'pythonpythonpython' Str将数...
    99+
    2023-01-31
    基础知识
  • CTF-PHP反序列化漏洞1-基础知识
    作者:Eason_LYC 悲观者预言失败,十言九中。 乐观者创造奇迹,一次即可。 一个人的价值,在于他所拥有的。可以不学无术,但不能一无所有! 技术领域:WEB安全、网络攻防 关注WEB安全、网络...
    99+
    2023-09-05
    php 开发语言 CTF php反序列化 web安全
  • python基础知识
    1.注释   1.1.单行注释:以#开头,#右边的有所东西当做说明.   1.2.多行注释:'''   我是多行注释   '''   2.变量   2.1.为了充分的利用内存空间以及更有效率的管理内存,变量是有不同类型的     2.1....
    99+
    2023-01-30
    基础知识 python
  • Python 基础知识
    只是打印出 hello world 肯定是不够的,是吗?你会希望做得比这还要多——你想要输入一些内容,操纵它,然后从中得到一些输出出来的内容。我们可以在 Python 中通过使用变量与常量来实现这一目标,在本章中我们还会学习其它的一些概...
    99+
    2023-01-31
    基础知识 Python
  • 了解PHP HTTP接口索引的基础知识。
    PHP是一种流行的编程语言,被广泛应用于Web开发。HTTP接口是开发Web应用程序的重要组成部分。在这篇文章中,我们将介绍PHP HTTP接口索引的基础知识,并提供一些演示代码。 HTTP接口是一种允许不同应用程序之间进行通信的协议。在W...
    99+
    2023-08-12
    http 接口 索引
  • PHP和Django教程:重定向的基础知识
    PHP和Django教程:重定向的基础知识 重定向(Redirect)是一个常见的Web开发概念,它指的是将一个URL地址转向到另一个URL地址。在Web应用程序中,重定向是一个非常重要的功能,可以帮助我们实现许多功能。在本文中,我们将介绍...
    99+
    2023-11-12
    django 教程 重定向
  • 基础知识—3.12
    1、二叉树: 结点:所有的叶子。 叶子结点:最后一层的叶子数。 性质1:二叉树第i层上的结点数目最多为 2{i-1} (i≥1)。性质2:深度为k的二叉树至多有2{k}-1个结点(k≥1)。性质3:包含n个结点的二叉树的高度至少为log2...
    99+
    2023-01-30
    基础知识
  • php学习(一):从基础PHP到高级PHP知识,一站式学习
    1.composer常用命令 composer list --help list命令的帮助 composer list 显示包信息 ...
    99+
    2023-09-05
    php sql 中间件
  • Java基础知识之StringWriter流的使用
    目录Java StringWriter流的使用一、StringWriter流定义二、StringWriter流实例域三、StringWriter流构造函数四、StringWriter...
    99+
    2024-04-02
  • Java基础知识之CharArrayWriter流的使用
    目录Java CharArrayWriter流一、CharArrayWriter流定义二、CharArrayWriter流构造函数三、CharArrayWriter流实例域四、Cha...
    99+
    2024-04-02
  • mysql基础知识-3
    一、mysql修改用户密码方法:    方法一:mysqladmin -u username -h host -p password 'new_password';    方法二:mysql>set password for 'use...
    99+
    2023-01-31
    基础知识 mysql
  • Java基础知识之BufferedReader流的使用
    目录一、BufferedReader类概念二、BufferedReader类实例域三、BufferedReader类构造函数四、BufferedReader类API五、Buffere...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作