• 配置环境

配置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. struts总结

    struts总结 1.为什么学习Struts框架 a.Struts框架好处 struts2是主流的开发技术,大多数公司在使用,struts把相关的servlet组件的各种操作都进行了相应的封装,这样就 ...

  2. Redis_基本类型介绍和指令___2

    1.hash Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象. Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿). ...

  3. iOS 火星坐标相关整理及解决方案汇总(转)

    这几天在处理定位相关的代码,彻彻底底的被火星坐标恶心到了. 恶心列表 从 CLLocationManager 取出来的经纬度放到 mapView 上显示,是错的! 从 CLLocationManage ...

  4. 找出数组前N大的数

    这个题也是个比较有名的面试题.当然有很多变种. 题目意思基本是:从一个数据量很大的数组里找前N大的元素.不允许排序. 这个题有两个比较好的思路: 思路一:用快速排序的思想,是思想,不是要排序; 思路二 ...

  5. time_t和struct tm之间的转换

    time_t到struct tm的转换: #include <time.h> struct tm *localtime(const time_t *timep); struct tm到ti ...

  6. uuid_short() 源代码

    /* uuid_short handling. The short uuid is defined as a longlong that contains the following bytes: B ...

  7. 聊聊动画引擎 pop

    iOS可以通过CADisplayLink实现自定义动画引擎,pop就是基于此实现的,而且比原生Core Animation更强大好用.譬如当ViewController侧滑返回的时候,系统会将Core ...

  8. 实现当UILable的内容超出其范围后自动滚动效果

    本文主要介绍 [当UILabel的内容超出其自身的宽度范围后,进行互动展示的效果],我们先来看一下Demo的效果图. 实际实现起来并不十分繁杂,在这里,为了开发的效率,我们使用了一个已经封装好的UIL ...

  9. 数据库sharding(scale up to scale out)

    sharding是将一个大数据库按照一定规则拆分成多个小数据库的一门技术. 当我们的应用数据量越来越多,访问量越来越大的时候,我们会作何选择?继续提升数据库服务器的性能还是采用一项技术让数据库平滑扩展 ...

  10. WebUploader——一个页面多个实例上传图片

    WebUploader官方例子看的不是很清楚,自己也是费了点劲自己写了一下. 需求:一个单页需要多个实例来上传,一次可上传多张 条件:后台接收C# 首先:引入webuploader     webup ...