定制 tripda/curse 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tripda/curse

最新稳定版本:v0.0.2

Composer 安装命令:

composer require tripda/curse

包简介

A PostgreSQL cursor reader

README 文档

README

Build Status

If you have large result sets returned by a PostgreSQL's function maybe is time to return a cursor and try this tiny library to help you out.

How to use it

Composer installation coming soon!

This component was made to use its own connection (You need to have a own transaction in order to use cursors in PostgreSQL) so you will need to use the component's PDOConnection (a wrapper for PDO with less methods and functionality) or create your own implementation of ConnectionInterface (for using Doctrine's DBAL, for example).

Note that the component will not declare a cursor for your query or something like that (although this will be done soon) it was made to take a function that returns a cursor. That said let's see some code (I will skip connection part because it is really, really simple).

<?php

$storedProcedureName = 'sp_get_products';
$storedProcedureParameters = array();

$cursorReader = new SequentialCursorReader($connection, $storedProcedureName, $storedProcedureParameters);

$cursorReader->open();

while ($result = $cursorReader->read()) {
    // Do something here with one result
}

$cursorReader->close();

SequentialCursorReader will not rewind or store results it will just go on forward until it returns null (I know this is not good) to signal that there are no more rows to read.

Since it uses its own connection close and __destruct will "close" (commit the transaction and close the connection) to avoid a high number of connections in your database.

统计信息

  • 总下载量: 34
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 8
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-04-22