博客列表 >mysqli 方式对商品信息表的 CURD 操作

mysqli 方式对商品信息表的 CURD 操作

张九明
张九明原创
2020年05月18日 23:33:30562浏览

mysqli 方式对商品信息表的 CURD 操作

1. 商品数据库创建

商品数据表

2.创建数据库参数

  1. <?php
  2. return [
  3. //连接类型
  4. 'type' => $type ?? 'mysql',
  5. // 主机名host
  6. 'host' => $host ?? 'localhost',
  7. //默认字符集utf8
  8. 'charset'->$charset ?? 'utf8',
  9. //默认端口号3306
  10. 'port' => $port ?? '3306',
  11. //数据库名
  12. 'dbname' => $dbname ?? 'php_goods',
  13. //数据库用户名
  14. 'dbusername' => $dbusername ?? 'root',
  15. //数据库用户的密码
  16. 'dbpassword' => $dbpassword ?? 'root'
  17. ];

3. 使用连接数据库

  1. <?php
  2. //定义connect文件的命令空间
  3. namespace php_mysqli_connect;
  4. //导入MYSQLi命令空间
  5. use mysqli;
  6. //导入数据库参数
  7. $config = require __DIR__ . '/config/db_mysqli.php';
  8. /**
  9. * @var string $type
  10. * @var string $port
  11. * @var string $charset
  12. * @var string $dbanme
  13. * @var string $dbusername
  14. * @var string $dbpassword
  15. */
  16. //展开数据库参数
  17. extract($config);
  18. //创建连数据库的对象
  19. $mysqli = new mysqli($host, $dbusername, $dbpassword, $dbname, $port);
  20. // var_dump($mysqli);
  21. //连接异常后报错
  22. if ($mysqli->connect_errno) {
  23. echo $mysqli->connect_error;
  24. die();
  25. }
  26. //设置字符集
  27. $mysqli->set_charset($charset);

4. SELECT 单条查询

  1. <?php
  2. //定义select命名空间
  3. namespace php_mysqli_select;
  4. ini_set('display_errors', 1);
  5. error_reporting(E_ALL);
  6. //引入数据库连接文件
  7. require 'connect_mysqli.php';
  8. //引入php_connect命名空间
  9. use php_mysqli_connect;
  10. //创建SQL语句
  11. $sql = 'SELECT `code_goods`, `name_goods`, `num_goods`, `unit_goods`,`price_goods` FROM `goods` WHERE `code_goods`= 1101 ';
  12. //执行查询
  13. $stmts = $mysqli->query($sql);
  14. //指针恢位
  15. // $stmts->data_seek(0);
  16. if ($stmts && $stmts->num_rows > 0) {
  17. while ($row = $stmts->fetch_assoc()) {
  18. vprintf("商品编号:%s,商品名称:%s,商品数量:%s %s,商品价格:%s元。</pre>", $row);
  19. }
  20. } else {
  21. echo '查询失败或没有查询到满足条件的商品';
  22. }
  23. //释放资源
  24. $stmts->free_result();
  25. $mysqli->close();

结果:
SELECT

5. SELECT 多条查询

  1. <?php
  2. //定义select命名空间
  3. namespace php_mysqli_select;
  4. ini_set('display_errors', 1);
  5. error_reporting(E_ALL);
  6. //引入数据库连接文件
  7. require 'connect_mysqli.php';
  8. //引入php_connect命名空间
  9. use php_mysqli_connect;
  10. //创建SQL语句
  11. $sql = 'SELECT `code_goods`, `name_goods`, `num_goods`, `unit_goods`,`price_goods` FROM `goods` WHERE `price_goods` > 20 ';
  12. //执行查询
  13. $stmts = $mysqli->query($sql);
  14. //指针恢位
  15. // $stmts->data_seek(0);
  16. if ($stmts && $stmts->num_rows > 0) {
  17. $rows = $stmts->fetch_all(MYSQLI_ASSOC);
  18. echo '<ol>';
  19. foreach ($rows as $row)
  20. vprintf("<li>商品编号:%s,商品名称:%6s,商品数量:%s %s,商品价格:%s元。</li>", $row);
  21. echo '</ol>';
  22. } else {
  23. echo '查询失败或没有查询到满足条件的商品';
  24. }
  25. //释放资源
  26. $stmts->free_result();
  27. $mysqli->close();

结果:
SELECT1

6. INSERT 插入数据

  1. <?php
  2. //定义insert命名空间
  3. namespace php_mysqli_insert;
  4. ini_set('display_errors', 1);
  5. error_reporting(E_ALL);
  6. //引入数据库连接文件
  7. require 'connect_mysqli.php';
  8. //引入php_connect命名空间
  9. use php_mysqli_connect;
  10. //创建SQL语句
  11. $sql = 'INSERT `goods` SET `code_goods`=1301, `name_goods`="20斤面粉", `num_goods`=212, `unit_goods`="袋",`price_goods`=96.9';
  12. //执行查询
  13. $stmts = $mysqli->query($sql);
  14. if ($stmts) {
  15. echo '添加商品成功';
  16. } else {
  17. echo '添加商品失败';
  18. }
  19. //释放资源
  20. unset($stmts, $sql);
  21. $mysqli->close();

插入执行结果:
INSERT

插入后数据表:
INSERT表数据

7. UPDATE 修改数据

  1. <?php
  2. //定义insert命名空间
  3. namespace php_mysqli_update;
  4. ini_set('display_errors', 1);
  5. error_reporting(E_ALL);
  6. //引入数据库连接文件
  7. require 'connect_mysqli.php';
  8. //引入php_connect命名空间
  9. use php_mysqli_connect;
  10. //创建SQL语句
  11. $sql = 'UPDATE `goods` SET `code_goods`=1302, `name_goods`="20斤面粉", `num_goods`=300, `unit_goods`="袋",`price_goods`=96.9 WHERE `id`="17"';
  12. //执行查询
  13. $stmts = $mysqli->query($sql);
  14. if ($stmts) {
  15. echo '修改商品成功';
  16. } else {
  17. echo '修改商品失败';
  18. }
  19. //释放资源
  20. unset($stmts, $sql);
  21. $mysqli->close();

修改前原表:
UPDATE
结果:
UPDATE
修改后表:
UPDATE

8. DELETE 删除数据

  1. <?php
  2. //定义insert命名空间
  3. namespace php_mysqli_update;
  4. ini_set('display_errors', 1);
  5. error_reporting(E_ALL);
  6. //引入数据库连接文件
  7. require 'connect_mysqli.php';
  8. //引入php_connect命名空间
  9. use php_mysqli_connect;
  10. //创建SQL语句
  11. $sql = 'UPDATE `goods` SET `code_goods`=1302, `name_goods`="20斤面粉", `num_goods`=300, `unit_goods`="袋",`price_goods`=96.9 WHERE `id`="16"';
  12. //执行查询
  13. $stmts = $mysqli->query($sql);
  14. if ($stmts) {
  15. echo '修改商品成功';
  16. } else {
  17. echo '修改商品失败';
  18. }
  19. //释放资源
  20. unset($stmts, $sql);
  21. $mysqli->close();

删除前原表:
DELETE前原图

执行 DELETE 的效果:
DELETE结果

删除后的表:
DELETE后的图

9. 总结

  • 使用 mysqli 连接数据库,与 PDO 类似;
  • mysqli 方式要与相应方法配对使用;
  • 函数不熟悉,需要继续背;
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议