PHP 面向对象的数据库操作
一、面向对象
|
fetch_all() |
抓取所有的结果行并且以关联数据,数值索引数组,或者两者皆有的方式返回结果集。 |
|
fetch_array() |
以一个关联数组,数值索引数组,或者两者皆有的方式抓取一行结果。 |
|
fetch_object() |
以对象返回结果集的当前行。 |
|
fetch_row() |
以枚举数组方式返回一行结果 |
|
fetch_assoc() |
以一个关联数组方式抓取一行结果。 |
|
fetch_field_direct() |
以对象返回结果集中单字段的元数据。 |
|
fetch_field() |
以对象返回结果集中的列信息。 |
|
fetch_fields() |
以对象数组返回代表结果集中的列信息。 |
1. 链接数据库
$conn = @new mysqli("127.0.0.1","root","","mydb");
if($conn->connect_errno){ //返回链接错误号
// 返回链接错误信息
die("数据库链接失败:".$conn->connect_error);
}
2. 选择数据库
$conn->select_db("mydb") or die("选择数据库失败:".$conn->error);
3.设置字符集编码
$conn->set_charset("utf8") or die("设置字符集失败:".$conn->error);
4. 准备SQL语句
$sql = <<<sql
select * from tb1;
sql;
5. 执行SQL语句,返回结果集或者布尔类型true/false
$res = $conn->query($sql);
6. 返回结果集中的字段数
var_dump($res->field_count);
返回结果集中的总行数
var_dump($res->num_rows);
7. 返回关联数组和索引数组
var_dump($res->fetch_array());
返回索引数组
var_dump($res->fetch_row());
返回关联数组
var_dump($res->fetch_assoc());
返回一个对象
var_dump($res->fetch_object());
_all//参数MYSQL_ASSOC、MYSQLI_NUM、MYSQLI_BOTH规定产生数组类型
8. 将结果集指针移到指定位置
$res->data_seek(0);
9. 返回结果集中的一个字段,并将指针移到下一列
var_dump($res->fetch_field());
直接返回结果集中的所有字段
var_dump($res->fetch_fields());
10.释放结果集资源
$res->close();// $res->free();
关闭数据库连接
$conn->close();
一些其他函数
|
field_tell() |
返回字段指针的位置 |
|
data_seek() |
调整结果指针到结果集中的一个任意行 |
|
num_fields() |
返回结果集中的字段数(列数) |
|
field_seek() |
调整字段指针到特定的字段开始位置 |
|
free() |
释放与某个结果集相关的内存 |
|
fetch_lengths() |
返回结果集中当前行的列长度 |
|
num_rows() |
返回结果集中的行数 |
PHP 面向对象的数据库操作的更多相关文章
- PHP数据库操作:使用ORM
之前我发了一篇博文PHP数据库操作:从MySQL原生API到PDO,向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对象.PDO操作MySQL数据库的.本文介绍如 ...
- PHP数据库操作:从MySQL原生API到PDO
本文将举详细例子向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对象.PDO操作MySQL数据库的. 为了后面的测试,先建立数据库表test.包含表名user,s ...
- Python之路【第九篇】堡垒机基础&数据库操作
复习paramiko模块 Python的paramiko模块,是基于SSH用于连接远程服务器并执行相关操作. SSHClient #!/usr/bin/env python #-*- coding:u ...
- QF——iOS中的数据库操作:SQLite数据库,第三方封装库FMDB,CoreData
SQLite数据库: SQLite是轻量级的数据库,适合应用在移动设备和小型设备上,它的优点是轻量,可移植性强.但它的缺点是它的API是用C写的,不是面向对象的.整体来说,操作起来比较麻烦.所以,一般 ...
- 更符合面向对象的数据库操作方式-OrmLite
1. jar包下载 下载地址:http://ormlite.com/releases/,一般用core和android包即可. 如果使用的是android studio,也可以直接通过module s ...
- Python程序练习4--模拟员工信息数据库操作
1.功能简介 此程序模拟员工信息数据库操作,按照语法输入指令即能实现员工信息的增.删.改.查功能. 2.实现方法 架构: 本程序采用python语言编写,关键在于指令的解析和执行:其中指令解析主要 ...
- OrmLite-更符合面向对象的数据库操作方式
1. jar包下载 下载地址:http://ormlite.com/releases/,一般用core和android包即可. 如果使用的是android studio,也可以直接通过module s ...
- 03 flask数据库操作、flask-session、蓝图
ORM ORM 全拼Object-Relation Mapping,中文意为 对象-关系映射.主要实现模型对象到关系数据库数据的映射. 1.优点 : 只需要面向对象编程, 不需要面向数据库编写代码. ...
- iOS数据库操作之coredata详细操作步骤
CHENYILONG Blog iOS数据库操作之coredata详细操作步骤 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http://weibo.com/ ...
随机推荐
- Nodejs与Mysql交互实现(异步写法,同步写法)
https://blog.csdn.net/think_A_lot/article/details/93498737
- 数学--数论--HDU 5382 GCD?LCM?(详细推导,不懂打我)
Describtion First we define: (1) lcm(a,b), the least common multiple of two integers a and b, is the ...
- RF(元素定位)
1.id 定位 Open Browser https://www.baidu.com gc Input Text id=kw selenium #注意 id 的值 kw 没有用引号括起来 Close ...
- vue 比 js的强大
//js写留言板 <!DOCTYPE html><html lang="en"><head> <meta charset="UT ...
- 两个命令把 Vim 打造成 Python IDE
运行下面两个命令,即可把 Vim(含插件)配置成 Python IDE.目前支持 MAC 和 Ubuntu. Shell curl -O https://raw.githubusercontent ...
- 工具类CountDownLatch的应用---百米赛跑案例
package com.aj.thread; import java.util.concurrent.CountDownLatch; import java.util.concurrent.Execu ...
- Spring Cloud学习 之 Spring Cloud Hystrix(使用详解)
文章目录 创建请求命令: 定义服务降级: 异常处理: 异常传播: 异常获取: 命令名称,分组以及线程池划分: 创建请求命令: Hystrix命令就是我们之前说的HystrixCommand,它用来 ...
- 消息队列高手课 -笔记-Kafka高性能的几个关键点
总结下kafka 高性能的几个关键点是: 1:使用批量处理的方式 去提升系统的吞吐能力 2:基于磁盘文件高性能的顺序读写的特性来设计存储结构 3:利用操作系统的PageCache 来缓存数据 减少I ...
- 【Hadoop离线基础总结】网站流量日志数据分析系统
目录 点击流数据模型 概述 点击流模型 网站流量分析 网站流量模型分析 网站流量来源 网站流量多维度细分 网站内容及导航分析 网站转化及漏斗分析 流量常见分析角度和指标分类 指标概述 指标分类 分析角 ...
- Quartus II 中参数化模块库(LPM)的使用
Quartus II 的LPM库所在的目录是\altera\11.0\quartus\libraries\megafunctions 现以LPM_MULT为例进行演示: 思路:1.首先创建一个pro ...