mysqli扩展库操作mysql数据库
- 配置环境
配置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数据库的更多相关文章
- 使用php的mysqli扩展库操作mysql数据库
简单介绍mysqli: 1.mysqli(mysql improve mysql扩展库的增强版) mysql扩展库和mysqli扩展库的区别 1.mysqli的稳定性 安全性 和 执行效率有所提高 ...
- php笔记08:数据库编程---使用php的MySQL扩展库操作MySQL数据库
1.使用php的MySQL扩展库操作MySQL数据库: php有3种方式操作MySQL数据库 (1)mysql扩展库 (2)mysqli扩展库 (3)pdo mysql扩展库与mysql数据库 ...
- PHP mysql 扩展库 操作mysql数据库步骤
一.mysql 扩展库操作mysql数据库步骤如下: 1.获取连接 2.选择数据库 3.设置操作编码 4.发送指令(ddl数据定义/dml数据操作/dql数据查询/dtl数据事务控制) 5.接收返回的 ...
- mysql扩展库操作mysql数据库
环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...
- php使用mysql扩展库链接mysql数据库(查询)
php链接数据库可以使用mysql扩展库,mysqli,pdo这几种方式,相比java而言要麻烦一点,因为它不像java那么统一.从代码的难易程度来说php的确要简单许多.步骤大体如下 1.打开数据库 ...
- php三种方式操作mysql数据库
php可以通过三种方式操作数据库,分别用mysql扩展库,mysqli扩展库,和mysqli的预处理模式分别举案例加以说明 1.通过mysql方式操作数据库 工具类核心代码: <?php cla ...
- php数据库编程---mysqli扩展库
1,mysqli扩展库允许我们访问MySQL数据库,并对MySql数据库进行curd操作.Mysqli扩展库比mysql扩展库加强了. 2,mysqli扩展库和mysql扩展库的比较 (1) mysq ...
- PHP使用mysqli扩展库实现增删改查(面向对象版)
mysqli扩展库是mysql扩展库的改进版本,在mysql扩展库的基础上提高了稳定性和效率,mysqli扩展库有两套东西,一套就是面向过程的mysqli另一套是面向对象的mysqli.操作方式大体和 ...
- 【小结】有关mysql扩展库和mysqli扩展库的crud操作封装
现阶段php如果要操作mysql数据库 php给我们提供了3套库 1.mysql扩展库 面向过程操作 2.mysqli扩展库 面向对象操作和面向过程操作并存 安全性和效率高于mysql扩展库 ...
随机推荐
- linux命令之cat
转自:http://www.cnblogs.com/peida/archive/2012/10/30/2746968.html cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容, ...
- 【面试虐菜】—— Oracle知识整理《DBA的思想天空》
Inventory Oracle安装工具OUI用来管理Oracle安装目录的 Oracle的参数文件,启动后按照下面的顺序读取参数文件,如果读取失败,启动数据库 失败: 1 $ORACLE_HO ...
- Identity-第二章
运用Asp.Net Identity 问题 解决方案 清单号 准备用户认证的应用程序 运用Authorize注解属性来限制对动作方法的访问,并定义一个对用户重定向的控制器,以便让用户提供凭据 1–4 ...
- Android多线程研究(4)——从一道面试题说起
有一道这种面试题:开启一个子线程和主线程同一时候运行,子线程输出10次后接着主线程输出100次,如此重复50次.先看以下代码: package com.maso.test; /** * * @auth ...
- 微信.NET 微信开发 自己主动内容回复 ASP.NET C#代码
微信开发中,首先遇到的问题就是处理怎样接收和响应用户消息 , 本文将向大家介绍一下方法和关键的代码. 本文使用的接口库是 :https://github.com/chendong152/Weixin ...
- 基于smack的xmpp packet 重写
基于Smack 实现Notification数据包.smack的类中有一个org.jivesoftware.smack.packet.IQ只需对他重写即可,在做的时候其实可以简单一点的,如果你使用ti ...
- Android开源git40个App源码
http://www.itbbu.com/1039.html (JamsMusicPlayer)很棒的音乐播放器(new) (F8)日程安排的软件 (Conversations)基于XMPP的 ...
- ubuntu 远程 ubuntu
一:被远程端ubuntu配置 參考windows远程ubuntu这篇文章里面的ubuntu配置 二:远程端ubuntu配置 1:打开Remmina Remote Desktop Client软件,例如 ...
- cocos2dx3.1.1+cocosstudio+lua问题总结
一.DeprecatedEnum.lua no value _G.LAYOUT_ABSOLUTE = ccui.Type.ABSOLUTE _G.LAYOUT_LINE ...
- mysql.cnf 配制文件详解
代码如下: [client]port = 3306socket = /tmp/mysql.sock [mysqld]port = 3306socket = /tmp/mysql.sock basedi ...