数据库操作:
1、查询操作主要是PDO->query() 主要是用于有记录结果返回的操作,特别是SELECT操作。
2、PDO->exec() 主要是针对没有结果集合返回的操作,比如INSERT、UPDATE、DELETE等操作,它返回的结果是当前操作影响的列数。
3、PDO->prepare() 主要是预处理操作,需要通过PDO->execute()来执行预处理里面的SQL语句,这个方法可以绑定参数,功能比较强大,后面再做分析……
获取结果集
1、PDOStatement->fetchColumn() 是获取结果指定第一条记录的某个字段,缺省是第一个字段。
2、PDOStatement->fetch() 是用来获取一条记录,该方法行为类似mysql_fetch_array(),不同的是该方法不仅可以返回数组,还可以返回对象。
参数取值:
PDO::FETCH_ASSOC |
关联索引(字段名)数组形式 |
PDO::FETCH_NUM |
数字索引数组形式 |
PDO::FETCH_BOTH |
默认,关联及数字索引数组形式都有 |
PDO::FETCH_OBJ |
按照对象的形式 |
PDO::FETCH_BOUND |
通过 bindColumn() 方法将列的值赋到变量上 |
PDO::FETCH_CLASS |
以类的形式返回结果集,如果指定的类属性不存在,会自动创建 |
PDO::FETCH_INTO |
将数据合并入一个存在的类中进行返回 |
PDO::FETCH_LAZY |
结合了 PDO::FETCH_BOTH、PDO::FETCH_OBJ,在它们被调用时创建对象变量 |
如果不在fetch()指定返回结果类型,可以单独使用setFetchMode();
3、PDOStatement->fetchAll() 是获取所有记录集,从记录集一次性取出并放入数组中
参数取值
PDO::FETCH_COLUMN |
指定返回返回结果集中的某一列,具体列索引由 column_index 参数指定 |
PDO::FETCH_UNIQUE |
以首个键值下表,后面数字下表的形式返回结果集 |
PDO::FETCH_GROUP |
按指定列的值分组 |
4、另外有两个周边的操作,一个是PDO->lastInsertId()和PDOStatement->rowCount()。
PDO->lastInsertId() 返回最后一次执行插入的主键值,如果一条语句多次插入则返回第一个主键值:id+rows-1。
PDOStatement->rowCount() 主要是用于PDO->query()和PDO->prepare()进行DELETE、INSERT、UPDATE操作影响的结果集,对PDO->exec()方法和SELECT操作无效。
5、PDO->setAttribute() 全局性设置,包括列名格式和错误类型
//----------------------------------我是分割线,未完待续------------------------------
分享到:
相关推荐
单条查询不需要启用事务处理,并且不需要使用PDO的预处理方式,但注意要使用$pdo->quote()方法来自动将字符型变量值的字符中首尾加上单引号,以防止SQL注入,并且免去特殊符号转义的过程。 $db_type='mysql'; //...
- **`lastInsertId()`**:获取最后一个插入记录的ID。 - **`getAttribute()`**:获取PDO对象的属性值。 - **`getAvailableDrivers()`**:返回可用的PDO驱动程序列表。 #### 四、PDOStatement对象 执行查询后,PDO...
PDO 详解 PDO(PHP Data Objects)是一种PHP扩展库,提供了一个统一的访问数据库的接口。它支持多种数据库管理系统,包括MySQL、PostgreSQL、Microsoft SQL Server、Oracle等。 PDO 的主要优点是: *统一的数据库...
6. **游标管理**:使用`PDO::cursor()`创建游标,通过游标在结果集中向前/向后移动,允许多次读取记录。 7. **数据类型映射**:PDO_INFORMIX会自动处理PHP变量与Informix数据库字段类型之间的转换,确保数据正确...
PDO::query()主要是用于有记录结果返回的操作,特别是SELECT操作,PDO::exec()主要是针对没有结果集合返回的操作,比如INSERT、UPDATE、DELETE等操作,它返回的结果是当前操作影响的列数。PDO::prepare()...
- 使用错误处理和日志记录机制来追踪和调试可能出现的问题。 通过以上介绍,我们可以看到PHP7.3的PDO_DBLIB库为开发人员提供了与SQL Server交互的强大工具,虽然它可能不支持所有SQL Server特性,但在许多场景下仍...
多选删除通常结合前端的复选框实现,用户选择多个记录进行删除。例如,假设有一个数组存储用户ID: ```php $selectedIds = [1, 2, 3]; $inClause = implode(',', array_fill(0, count($selectedIds), '?')); $...
除了上述功能,PDO封装类还可以根据实际需求扩展,如支持连接池、执行性能统计、日志记录等功能。在`DataBaseAPI.class.php`和`SystemPage.class.php`这两个文件中,可能分别实现了数据库API操作和系统分页的功能,...
- `PDO::CASE_NATURAL`: 列名保持原始大小写。 - `PDO::CASE_UPPER`: 将列名强制转换为大写。 - **PDO::ATTR_ERRMODE** - `PDO::ERRMODE_SILENT`: 错误发生时,不抛出异常也不报告错误。 - `PDO::ERRMODE_...
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?> ``` 这里的`PDO::ATTR_ERRMODE`设置为`PDO::ERRMODE_...
- 执行SQL语句并通过`fetch(PDO::FETCH_ASSOC)`获取第一条记录,返回一个关联数组。 ##### 3. 查询所有记录 ```php public function quAll($sql, $term = '') { $PDO = $this->Link(); try { $stmt = $PDO->...
这通常通过记录失败的登录尝试次数和IP地址,当达到预设阈值时,将该IP加入黑名单,限制其后续的登录请求。 留言功能允许用户上传图片,这涉及到了文件上传的安全问题。为了防止非法文件上传,系统应检查文件类型、...
这个例子将从名为"your_table"的表中获取所有记录,并以关联数组的形式打印出来。 提供的压缩包文件“PHP(PDO)连接Oracle数据库”可能包含了安装和配置PDO_OCI所需的动态库,以及一个实际的测试脚本,帮助开发者...
本系统的核心在于如何利用PDO进行有效的数据操作,包括验证用户输入、查询数据库以及处理用户会话。 1. **PDO连接数据库** PDO通过`new PDO()`构造函数建立到数据库的连接。例如,连接MySQL数据库的代码可能如下:...
结合实例形式分析了PDO类库常见的连接,初始化及增删改查等操作技巧,获取表格的最后主键,检查数据是否已经存在(依赖条件),预处理删除(注:针对主键为 INT 类型,推荐使用),返回单个字段数据或单条记录。
"PHP连接SQLServer的扩展 测试过 已经配置成功"这部分描述意味着这个压缩包可能包含了一些配置和测试过程中的记录,可能包括配置文件示例、错误日志或连接测试脚本。这些文件对于初学者来说是非常有价值的参考资料,...
4. **数据查询**:类会提供执行SELECT、INSERT、UPDATE、DELETE等SQL语句的方法,可能支持单条记录操作和批量操作。 5. **结果集处理**:查询结果可以被转换为数组或对象,类可能会有方法处理这些结果,如fetch、...
结合实例形式分析了PDO类库常见的连接,初始化及增删改查等操作技巧,获取表格的最后主键,检查数据是否已经存在(依赖条件),预处理删除(注:针对主键为 INT 类型,推荐使用),返回单个字段数据或单条记录。
1. queryrows:返回多行记录 2. queryrow:返回为单条记录 3. queryforint:查询单字段,返回整数 4. queryforfloat:查询单字段,返回浮点数(float) 5. queryfordouble:查询单字段,返回浮点数(double) 6. ...