1.连接到数据库:

· 面向对象的方法:

$db = new mysqli('hostname', 'username', 'password', 'dbname');

· 面向过程的方法:

$db = mysqli_connect('hostname', 'username', 'password', 'dbname');

· 连接结果的检查:

if (mysqli_connect_errno()) {

echo 'Error: Could not connect to database.';

exit;

}

mysqli_connect_errno()将在连接错误时返回一个错误号,成功则返回0。

2.选择使用的数据库:

· 面向对象的方法:

$db->select_db(dbname);

· 面向过程的方法:

mysqli_select_db(db_resource, db_name);

3.操作数据库:

· 面向对象的方法:

$query = "select * from table table_name";

$result = $db->query($query);

返回一个结果对象,执行失败则返回false。

· 面向过程的方法:

$query = "select * from table table_name";

$result = mysqli_query($db, $query);

返回一个结果资源,执行失败则返回false。

4.获取结果:

· 面向对象的方法:

$num_results = $result->num_rows;

当使用面向对象的方法时,返回的行数保存在结果对象的num_rows成员变量中。

for ($i=0; $i < $num_results; $i++) {

$row = $result->fetch_assoc();

$value = $row[key];

...

}

· 面向过程的方法:

$num_results = mysqli_num_rows($result);

当使用面向过程的方法时,调用mysqli_num_rows()可以得到返回的行数。

for ($i=0; $i < $num_results; $i++) {

$row = mysqli_fetch_assoc($result);

$value = $row[key];

...

}

· 其他的方法:

1)将结果取回到一个枚举数组中:

· 面向对象的方法:

$row = $result->fetch_row();

· 面向过程的方法:

$row = mysqli_fetch_row($result);

然后通过下标访问即可($row[0], $row[1]...)。

2)将结果取回到一个对象中:

· 面向对象的方法:

$row = $result->fetch_object();

· 面向过程的方法:

$row = mysqli_fetch_object($result);

之后通过$row->keyname访问每个属性即可。

以上是针对数据库查询,如果是执行数据库修改时,应该使用mysqli_affected_rows()来得到受影响的数据库条目总数:

· 面向对象的方法:

$num = $db->affected_rows;

· 面向过程的方法:

$num = mysqli_affected_rows($db);

5.断开连接:

· 面向对象的方法:

$result->free();

· 面向过程的方法:

mysqli_free_result($result);

这样即可释放结果集。

之后断开数据库连接:

· 面向对象的方法:

$db->close();

· 面向过程的方法:

mysqli_close($db);

____________________________

推荐阅读:

Logstash+Kafka+ES实现日志采集系统

大数据开放平台产品落地方案

支付宝系统架构内部剖析

华为Java编程军规,每季度代码验收标准

大数据Spark与Storm技术选型

PHP基础:MYSQL数据库操作的更多相关文章

  1. Vc数据库编程基础MySql数据库的表查询功能

    Vc数据库编程基础MySql数据库的表查询功能 一丶简介 不管是任何数据库.都会有查询功能.而且是很重要的功能.上一讲知识简单的讲解了表的查询所有. 那么这次我们需要掌握的则是. 1.使用select ...

  2. Vc数据库编程基础MySql数据库的常见库命令.跟表操作命令

    Vc数据库编程基础MySql数据库的常见操作 一丶数据库常见的库操作 1.1查看全部数据库 命令:  show databases 1.2 创建数据库 命令: Create database 数据库名 ...

  3. php : mysql数据库操作类演示

    设计目标: 1,该类一实例化,就可以自动连接上mysql数据库: 2,该类可以单独去设定要使用的连接编码(set names XXX) 3,该类可以单独去设定要使用的数据库(use XXX): 4,可 ...

  4. php MySQL数据库操作类源代码

    php MySQL数据库操作类源代码: <?php class MySQL{ private $host; //服务器地址 private $name; //登录账号 private $pwd; ...

  5. 设计模式 - 单例模式mysql数据库操作类

    待续... index.php 调用方法: <?php header('Content-Type:text/html; charset=utf8'); require 'instance.php ...

  6. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

  7. Python/MySQL(四、MySQL数据库操作)

    Python/MySQL(四.MySQL数据库操作) 一.数据库条件语句: case when id>9 then ture else false 二.三元运算: if(isnull(xx)0, ...

  8. Java通过JDBC 进行MySQL数据库操作

    转自: http://blog.csdn.net/tobetheender/article/details/52772157 Java通过JDBC 进行MySQL数据库操作 原创 2016年10月10 ...

  9. Vc数据库编程基础MySql数据库的表增删改查数据

    Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...

  10. Mysql 数据库操作之DDL、DML、DQL语句操作

    Mysql 数据库操作之DDL.DML.DQL语句操作 设置数据库用户名密码 l  Show databases 查看数据库列表信息 l  查看数据库中的数据表信息 ,格式: use 数据库名: sh ...

随机推荐

  1. 1、了解计算机与操作系统发展阶段 2、选择一个具体的操作系统,结合计算机与操作系统的发展阶段,详细了解其渊源、发展过程、趋势,整理成简洁美观的图文博客发布。 Windows Mac os x Unix Linux Android 等。

    1.了解计算机与操作系统发展阶段 操作系统并不是与计算机硬件一起诞生的,它是在人们使用计算机的过程中,为了满足两大需求:提高资源利用率.增强计算机系统性能,伴随着计算机技术本身及其应用的日益发展,而逐 ...

  2. vue-router下的html5 history在iis服务器上的设置 vue去掉#

    转自:https://www.cnblogs.com/zzsdream/p/6576639.html 1.安装 url rewrite模块到IIS 下载地址 2.在web.config文件中 syst ...

  3. mysql根据查询结果批量更新多条数据(插入或更新)

    mysql根据查询结果批量更新多条数据(插入或更新) 1.1 前言 mysql根据查询结果执行批量更新或插入时经常会遇到1093的错误问题.基本上批量插入或新增都会涉及到子查询,mysql是建议不要对 ...

  4. 一种简单的 rem 单位基准设置

    1rem 换算成的像素值等于 html 元素的 font-size 值 如果 设置 html 的 font-size 为 100px, 那么设计稿的 像素转换成 rem 只需要除以 100 即可. f ...

  5. 【RL-TCPnet网络教程】第16章 UDP用户数据报协议基础知识

    第16章      UDP用户数据报协议基础知识 本章节为大家讲解UDP(User Datagram Protocol,用户数据报协议),需要大家对UDP有个基础的认识,方便后面章节UDP实战操作. ...

  6. navicat实现Mysql数据备份

    方法/步骤     使用navicat工具连接mysql数据库,这里以navicat for Mysql工具为例.如果数据库在本机,那么连接ip处写localhost即可,如果数据库在其他机器,那需要 ...

  7. [Swift]LeetCode135. 分发糖果 | Candy

    There are N children standing in a line. Each child is assigned a rating value. You are giving candi ...

  8. [Swift]LeetCode380. 常数时间插入、删除和获取随机元素 | Insert Delete GetRandom O(1)

    Design a data structure that supports all following operations in averageO(1) time. insert(val): Ins ...

  9. [Swift]LeetCode860. 柠檬水找零 | Lemonade Change

    At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...

  10. 了解django部署(Django + Uwsgi + Nginx)

    首先了解下基本概念: 1 WSGI WSGI:全称是Web Server Gateway Interface,是python应用程序或者框架和web服务器之间的一种接口,被广泛接受.WSGI不是服务器 ...