• 配置环境

配置php.ini文件让php支持mysqli扩展库

extension=php_mysqli.dll

  • 建库建表

详见博客 “mysql扩展库操作mysql数据库”

  • 查询数据库
 <?php
//mysqli扩展库操作mysql数据库,面向对象
$mysqli=new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die("连接数据库失败".$mysqli->connect_error);
}
$sql="select * from user1";
$res=$mysqli->query($sql);
while($row=$res->fetch_row()){
foreach($row as $key=>$val){
echo "--".$val;
}
echo "<br/>";
}
$res->free();
$mysqli->close();
?>

结果如下:

  • 增删改数据库
 <?php
//mysqli扩展库操作mysql数据库,面向对象
$mysqli=new MySQLi("localhost","root","root","test");
if($mysqli->connect_error){
die("连接数据库失败".$mysqli->connect_error);
}
//$sql="insert into user1 (name,password,age,birthday) values ('wpp',md5('wpp'),25,'1991-05-05')";
//$sql="update user1 set age=24 where name='wpp'";
$sql="delete from user1 where name='wpp'";
$res=$mysqli->query($sql);
if(!$res){
echo "操作失败".$mysqli->error;
}else{
if($mysqli->affected_rows>0){
echo "操作成功";
}else{
echo "没有行受到影响";
}
}
$mysqli->close();
?>
  •  把数据库操作封装成类

mysqliTool.class.php  数据库操作文件

 <?php
class MysqliTool{
private $mysqli;
private $host="localhost";
private $userName="root";
private $pwd="root";
private $db="test";
public function __construct(){
$this->mysqli=new MySQLi($this->host,$this->userName,$this->pwd,$this->db);
if($this->mysqli->connect_error){
die("连接失败".$this->mysqli->connect_error);
}
$this->mysqli->query("set names utf8");
}
public function executeDql($sql){
$res=$this->mysqli->query($sql) or die("操作dql失败".$this->mysqli->error);
return $res;
}
public function executeDml($sql){
$res=$this->mysqli->query($sql);
if(!$res){
return 0;//0表示操作失败
}else{
if($this->mysqli->affected_rows>0){
return 1;//1表示操作成功
}else{
return 2;//2表示没有行受到影响
}
}
}
public function mysqliClo(){
$this->mysqli->close();
}
}
?>

执行dql语句:

 <?php
//引入类文件
require_once "mysqliTool.class.php";
//把类实例化
$mysqliTool=new MysqliTool();
//dql语句
$sql="select * from user1";
//执行sql语句
$res=$mysqliTool->executeDql($sql);
while($row=$res->fetch_row()){
foreach($row as $key=>$val){
echo "--".$val;
}
echo "<br/>";
}
$res->free();
$mysqliTool->mysqliClo();
?>

执行dml语句:

 <?php
//引入类文件
require_once "mysqliTool.class.php";
//把类实例化
$mysqliTool=new MysqliTool();
//dml语句
//$sql="insert into user1 (name,password,age,birthday) values ('wpp',md5('wpp'),25,'1991-05-05')";
//$sql="update user1 set age=24 where name='wpp'";
$sql="delete from user1 where name='wpp'";
//执行sml语句
$res=$mysqliTool->executeDql($sql);
if($res==0){
echo "操作失败";
}else if($res==1){
echo "操作成功";
}else if($res==2){
echo "没有行受到影响";
}
$mysqliTool->mysqliClo();
?>

mysqli扩展库操作mysql数据库的更多相关文章

  1. 使用php的mysqli扩展库操作mysql数据库

    简单介绍mysqli: 1.mysqli(mysql improve mysql扩展库的增强版) mysql扩展库和mysqli扩展库的区别 1.mysqli的稳定性  安全性 和 执行效率有所提高 ...

  2. php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库

    1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo     mysql扩展库与mysql数据库 ...

  3. PHP mysql 扩展库 操作mysql数据库步骤

    一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...

  4. mysql扩展库操作mysql数据库

    环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...

  5. php使用mysql扩展库链接mysql数据库(查询)

    php链接数据库可以使用mysql扩展库,mysqli,pdo这几种方式,相比java而言要麻烦一点,因为它不像java那么统一.从代码的难易程度来说php的确要简单许多.步骤大体如下 1.打开数据库 ...

  6. php三种方式操作mysql数据库

    php可以通过三种方式操作数据库,分别用mysql扩展库,mysqli扩展库,和mysqli的预处理模式分别举案例加以说明 1.通过mysql方式操作数据库 工具类核心代码: <?php cla ...

  7. php数据库编程---mysqli扩展库

    1,mysqli扩展库允许我们访问MySQL数据库,并对MySql数据库进行curd操作.Mysqli扩展库比mysql扩展库加强了. 2,mysqli扩展库和mysql扩展库的比较 (1) mysq ...

  8. PHP使用mysqli扩展库实现增删改查(面向对象版)

    mysqli扩展库是mysql扩展库的改进版本,在mysql扩展库的基础上提高了稳定性和效率,mysqli扩展库有两套东西,一套就是面向过程的mysqli另一套是面向对象的mysqli.操作方式大体和 ...

  9. 【小结】有关mysql扩展库和mysqli扩展库的crud操作封装

    现阶段php如果要操作mysql数据库 php给我们提供了3套库 1.mysql扩展库   面向过程操作 2.mysqli扩展库  面向对象操作和面向过程操作并存  安全性和效率高于mysql扩展库 ...

随机推荐

  1. 【开发工具 - Git】之Git版本回退

    这篇博客主要记录了关于 查看记录.版本回退.添加标签.删除文件 的操作 1.查看文件修改情况: 可以通过 git diff a.java查看a.java文件自从上次提交后的修改情况,如果自从上次提交之 ...

  2. Java正则表达式:Pattern类和Matcher类

    一.捕获组的概念 捕获组可以通过从左到右计算其开括号来编号,编号是从1 开始的.例如,在表达式 ((A)(B(C)))中,存在四个这样的组: 1     ((A)(B(C))) 2     (A) 3 ...

  3. Rational Rose 2007 &amp;Rational Rose 2003 下载及破解方法和汉化文件下载

    这么好的东西,不拿来出分享,我对不起原作者呀.可是我这里不知道作者是谁,感谢在先了. ed2k://|file|%5BIBM%E8%BD%AF%E4%BB%B6%E7%B3%BB%E5%88%97%5 ...

  4. 在Java项目中整合Scala

    Scala是一个运行在Java JVM上的面向对象的语言.它支持函数编程,在语法上比Java更加灵活,同时通过Akka库,Scala支持强大的基于Actor的多线程编程.具有这些优势,使得我最近很想在 ...

  5. [GIF] GIF Loop Coder - Interpolation

    This video discusses the default interpolation in GIF Loop Coder, and four distinct ways to change t ...

  6. 模拟接听电话的方法,兼容华为android5.0以上设备

    /** * 通过反射调用的方法,接听电话,该方法只在android 2.3之前的系统上有效. * * @param context */private static void answerRingin ...

  7. asp.net下载的方法1

    1. 首先新建一个用于进行下载处理的page页,如download.aspx,里面什么东西也没有. 2. 添加一个DownloadHandler类,它继承于IHttpHandler接口,可以用来自定义 ...

  8. WPF 自定义路由事件 与 附加路由事件

    为student添加附件事件

  9. 一种协程的 C/C++ 实现

    一种协程的 C/C++ 实现 介绍 在前几天接触到了协程的概念,觉得很有趣.因为我可以使用一个线程来实现一个类似多线程的程序,如果使用协程来替代线程,就可以省去很多原子操作和内存栅栏的麻烦,大大减少与 ...

  10. python中关于正则表达式二

    2.2 反向引用 \1, \2... 表达式在匹配时,表达式引擎会将小括号 "( )" 包含的表达式所匹配到的字符串记录下来.在获取匹配结果的时候,小括号包含的表达式所匹配到的字符 ...