Mysqli的基本操作-CURD的学习开发总结-php教程

资源魔 18 0
PHP自5.5起,曾经齐全破除mysql扩大,民间保举应用MySQLI或PDO来替代。这篇文章次要讲mysqli的一些根本操作。应用mysqli有两个格调的写法,工具式或函数式,上面咱们只展现函数式的写法格调。

数据库衔接

起首一定需求衔接数据库。衔接数据前,咱们需求预备的普通无数据库的账号、明码、端标语、数据库名。

由于网络缘由或其余缘由常常会有衔接没有上数据库的状况,以是,咱们需求做衔接失败的解决。

<?php
// 数据库衔接
$mysqli = mysqli_connect(
   'localhost',
   'root',
   '',
   'test'
);

if (mysqli_connect_errno()) {
   throw new Exception('databases connect error:'
       .mysqli_connect_error());
}

// ...一些数据库操作
// 封闭数据库资本
mysqli_close($mysqli);

设置字符集

设置字符集应用mysqli_set_charset();

字符集今朝咱们年夜都应用utf8mb4,由于他支持4个字节长度的字符。他支持一些emoji表情字符。当然假如你没有需求支持4字节字符的话能够抉择应用utf8,由于他比拟剩空间。

mysqli_set_chartset($mysqli, 'utf8mb4');

从新抉择数据库

数据库衔接后,还能够从新抉择数据库。

mysqli_select_db($mysqli, '数据库名');

CURD操作

mysqli_query():对数据库执行一次操作,DDL、DQL 、DML都支持。

mysqli_affected_rows():猎取影响记载行数。

新增数据操作

mysqli_query($mysqli,
   "INSERT INTO users(username, age, sex)
               VALUES('周杰伦', 35, '男'),
                      ('谢霆锋', 35, '男')"
);

if (mysqli_affected_rows($mysqli) <= 0) {
   throw new Exception('databases insert error:'
       . mysqli_error($mysqli));
}

修正数据操作

这外面有一个留意点,mysqli_affected_rows前往的值为0的状况。它更新的信息与前次齐全同样,这个状况很普遍。比方说正在修正的时分,延续点击了屡次修正按钮。但其实不能阐明顺序代码有成绩。以是,以及新增纷歧样的是,前往0也应该是胜利状态。

mysqli_query($mysqli,
   "UPDATE users SET age=40 WHERE user_id = 1"
);

if (mysqli_affected_rows($mysqli) < 0) {
   throw new Exception('databases update error:'
       . mysqli_error($mysqli));
}

删除了数据操作

留意:修正以及删除了操作必需加where前提,否则将会修正整个表的数据,结果不可思议(删库跑路o(╯□╰)o)。

mysqli_query($mysqli,
   "Delete FROM users  WHERE user_id = 100"
);

if (mysqli_affected_rows($mysqli) <= 0) {
   throw new Exception('databases delete error:'
       . mysqli_error($mysqli));
}

查问操作

当mysqli_query执行的是一条查问语句时,该函数会前往mysqli_result后果集。

mysqli_fetch_all()从后果集中猎取全副数据。该函数第二个参数能够指定前往数据的格局。辨别为:

  • MYSQLI_NUM:前往索引数组

  • MYSQLI_ASSOC:前往联系关系数组

  • MYSQLI_BOTH:既有索引数组也无关联数组

另外需求留意,对后果集的操作完结后,记患上销毁后果集资本。

// 数据库衔接
$mysqli = mysqli_connect(
   'localhost',
   'root',
   '',
   'test'
);
if (mysqli_connect_errno()) {
   throw new Exception('databases connect error:'
       .mysqli_connect_error());
}
mysqli_set_charset($mysqli, 'utf8mb4');
$result = mysqli_query($mysqli,
   "SELECT * FROM users"
);
if (mysqli_affected_rows($mysqli) < 0) {
   throw new Exception('databases select error:'
       . mysqli_error($mysqli));
}
$users = mysqli_fetch_all($result, MYSQLI_ASSOC);
// 销毁后果集资本
mysqli_free_result($result);
// 封闭数据库资本
mysqli_close($mysqli);

以上就是Mysqli根本操作,集体实际学习开发总结,欢送探讨!

以上就是Mysqli的根本操作-CURD的学习开发总结的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 Mysqli CURD

抱歉,评论功能暂时关闭!