• Main Page
  • Data Structures
  • Files
  • File List

firebirdSequence.php

Go to the documentation of this file.
00001 <?php
00002 
00003 /**
00004  * Firebird/Interbase generator/sequence class
00005  *
00006  * @package objSQL
00007  * @version 2.1.0
00008  * @author MT Jordan <mtjo62@gmail.com>
00009  * @link http://objsql.sourceforge.net
00010  * @copyright 2004-2010 openSource Partners
00011  * @license LGPL
00012  * @revision $Id: firebirdSequence.php,v 1.3 2008-01-19 23:58:30-05 mt_jordan Exp $
00013  */
00014 
00015 class firebirdSequence
00016 {
00017     /**********************************************
00018      * Internal variables
00019      *********************************************/
00020 
00021     /**
00022      * Database connection object
00023      *
00024      * @access private
00025      * @var    mixed
00026      */
00027     private $objConnection;
00028 
00029     /**
00030      * Sequence name
00031      *
00032      * @access private
00033      * @var    str
00034      */
00035     private $objSequence;
00036 
00037     /**********************************************
00038      * Class methods
00039      *********************************************/
00040     /**
00041      * Constructor
00042      *
00043      * @access public
00044      * @param  str   $sequence
00045      * @param  int   $max
00046      * @param  mixed $connection
00047      */
00048     public function __construct( $sequence, $max=false, $connection )
00049     {
00050         $this->objConnection = $connection;
00051         $this->objSequence   = $sequence;
00052     }
00053 
00054     /**
00055      * Get value for named sequence
00056      *
00057      * @access public
00058      * @return int
00059      */
00060     public function getSequence()
00061     {
00062         return ibase_gen_id( $this->objSequence, 1, $this->objConnection );
00063     }
00064 
00065     /**
00066      * Create sequence/generator object
00067      *
00068      * @access public
00069      * @return mixed
00070      */
00071     public function setSequence()
00072     {
00073         //use CREATE GENERATOR for backwards compatibility with Firebird 1.5
00074         return ibase_query( $this->objConnection, 'CREATE GENERATOR ' . $this->objSequence )
00075         or trigger_error( ibase_errmsg(), E_USER_WARNING );
00076     }
00077 }
00078 
00079 ?>

Generated on Sat Jul 10 2010 15:14:38 for objSQL 2.1.0 by  doxygen 1.7.1