php的mysqli插件笔记

版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_27984879/article/details/87892535

Mysqli扩展面向对象的使用

通过Mysqli类库操作数据库的步骤

  • 建立到Mysql的连接
  • 打开指定的数据库
  • 设置客户端的字符集
  • 执行sql查询
  • 释放结果集
  • 关闭连接

新建mysqli对象

$变量 = new mysqli();

使用connect函数连接到数据库

$变量 = new mysqli();
$变量->connect('127.0.0.1','root','password');

使用select_db函数打开数据库

$变量 = new mysqli();
$变量->connect('127.0.0.1','root','password');
$变量->select_db('数据库');

简写

$变量 = new mysqli('localhost','root','password','数据库(可选)');

检查错误
connect_errno:得到连接产生的错误编号

if($变量->connect_errno){
	die('错误'.$变量->connect_errno)
}

connect_error:得到连接产生的错误信息

if($变量->connect_error){
	die('错误'.$变量->connect_error)
}

错误注释符
使用@注释mysql报错

$变量 = @new mysql('localhost','root','password');

设置客户端的编码方式

$变量->set_charset('utf-8');

执行SQL查询
使用query函数执行SQL查询

$变量1 = new mysql('localhost','root','password');
$变量2 = <<<EOF
SQL语句
EOF;
$变量1->query($变量2);

query可以获取返回值

$变量1 = new mysql('localhost','root','password');
$变量2 = <<<EOF
SQL语句
EOF;
$变量3=$变量1->query($变量2);
  • SELECT/DESC/DESCRIBE/SHOW/EXPLAIN执行成功返回mysqli_result对象,执行失败返回false
  • 对于其他SQL语句的执行,执行成功返回true,否则返回false

使用erron与error来获取错误号和错误信息

$变量1 = new mysql('localhost','root','password');

$变量2 = <<<EOF
SQL语句
EOF;

$变量3=$变量1->query($变量2);

if($变量3){
	语句
}else{
	echo 'ERROR'.$变量1->erron.':'.$变量1->error;
}

fetch_all()函数获取结果集中的所有记录,返回二维数组

$变量1=$变量2->fetch_all();

fetch_row()函数函数获取结果集中的第一条记录,返回二维数组

$变量1=$变量2->fetch_row();

close()函数释放结果集

$变量->fetch_row();

关闭连接
使用close函数关闭连接

$变量->close();

insert_id函数得到上一次操作产生的AUTO_INCREMENT的值

echo $变量->insert_id;

affected_rows函数得到上一次受到影响的记录数量

echo $变量->affected_rows;

affected_rows值有3种

  • 受影响的记录条数
  • -1 SQL语句有问题
  • 0 没有受影响的记录
    escape_string转义特殊字符
$变量1->escape_string($变量2);

multi_query函数同时进行多条语句

  • 返回值仅与第一条语句有关
  • 如果前面的语句错了,后面的语句不会执行
$mysql链接->multi_query($SQL语句);

预处理

$sql = "INSERT user(username,password,age) VALUES(?,?,?)";
//准备预处理语句
$mysqli_stmt = $mysqli->prepare($sql);
//声明参数
$username = "king";
$password = md5("king");
$age = 12;
//绑定参数
$mysqli_stmt->bind_param('ssi',$username,$password,$age);
//执行语句
$mysqli_stmt->execute();

猜你喜欢

转载自blog.csdn.net/qq_27984879/article/details/87892535
今日推荐