1、链接数据库mysqli_connectmysql
参数:① 主机地址
② MySQL用户名
③ MySQL密码
④ 选择链接的数据
⑤ 端口号
返回:若是链接成功,返回资源类标识符;
若是链接失败,返回false。
注意: ① 主机地址和用户名必填。
② 若是MySQL密码为空,则能够省略密码或者用""代替
mysqli_connect("127.0.0.1", "root");
mysqli_connect("127.0.0.1", "root", "", "mydb");
③ 链接的数据库能够省略,但须要在链接之后使用其余函数选择数据库
④ 端口号能够省略。默认端口号3306
$conn = mysqli_connect("127.0.0.1", "root", "", "mydb");
2、检测数据库链接是否成功
mysqli_connect_errno([$conn]):返回上次链接数据路库的错误号,链接成功返回0;
mysqli_connect_error([$conn]):返回上次链接数据路库的信息。
if(mysqli_connect_errno($conn)){
die("数据库链接失败,错误信息是:".mysqli_connect_error());
}
链接数据库的同时,直接判断*/
$conn = mysqli_connect("127.0.0.1", "root", "", "mydb") or
die("数据库链接失败,错误信息是:".mysqli_connect_error());
3、选择数据库mysqli_select_db
参数: ① 资源标识符
② 选择的数据库名称
返回值:选择成功返回true,选择失败返回false。
若是修改为功,$conn中的数据库就会直接改变,后续操做将使用新数据库查询;
若是修改失败,$conn中的数据库不会改变,但后续操做依然可使用原数据库。
mysqli_error($conn):返回各类数据库操做的错误信息。
mysqli_select_db($conn, "mydb") or die("选择数据库失败!".mysqli_error($conn));
4、设置字符集编码mysqli_set_charset
注意:只能设置utf8,不能选择utf-8
mysqli_set_charset($conn, "utf8") or die("字符集编码设置失败!".mysqli_error($conn));
5、准备SQL语句
$sql = <<<sql
select * from `user`
-- insert into `user` values(null,123,123,"一问三");
sql;
6、执行SQL语句mysqli_query
参数:① 资源标识符 ② SQL语句
返回: 若是是DML 增删改等数据操做语言,返回true或false表示是否成功;
若是是DQL 查询 等数据查询语言,返回包含表中数据的资源结果集。
若是查询失败,直接返回false。
$res = mysqli_query($conn, $sql);
DML 语句 返回受影响的行数*/
var_dump(mysqli_affected_rows($conn));
执行插入操做时,返回最新自增的id*/
var_dump(mysqli_insert_id($conn));
DQL时 返回查询出数据的总条数*/
var_dump(mysqli_num_rows($res));
DQL时 返回查询出数据的字段数*/
var_dump(mysqli_num_fields($res));
7、处理资源结果集
参数: ① 须要处理的资源结果集
② 须要返回哪一种类型的数组:MYSQL_ASSOC -- 返回关联数组
MYSQL_NUM -- 返回索引数组
MYSQL_BOTH -- 返回两种数组,默认。
var_dump(mysqli_fetch_array($res,MYSQL_NUM));
返回关联数组
var_dump(mysqli_fetch_assoc($res));
索引数组
var_dump(mysqli_fetch_row($res));
返回一个对象
var_dump(mysqli_fetch_object($res));
/*将结果集的指针恢复到指定位置
mysqli_data_seek($res, 0);
8、释放结果集,关闭数据资源
释放资源结果集
mysqli_free_result($res);
关闭数据库链接
mysqli_close($conn);sql