Source for file Oracle.php
Documentation is available at Oracle.php
* $Id: Oracle.php 1798 2007-06-24 21:05:12Z zYne $
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* This software consists of voluntary contributions made by many individuals
* and is licensed under the LGPL. For more information, see
* <http://www.phpdoctrine.com>.
* Doctrine_Connection_Oracle
* @license http://www.opensource.org/licenses/lgpl-license.php LGPL
* @category Object Relational Mapping
* @link www.phpdoctrine.com
* @version $Revision: 1798 $
* @author Konsta Vesterinen <kvesteri@cc.hut.fi>
* @var string $driverName the name of this connection driver
public function __construct(Doctrine_Manager $manager, $adapter)
'summary_functions' =>
true,
'auto_increment' =>
false, // implementation is broken
'result_introspection' =>
true,
'prepared_statements' =>
true,
'identifier_quoting' =>
true,
'pattern_escaping' =>
true,
$this->options['DBA_username'] = false;
$this->options['DBA_password'] = false;
$this->options['database_name_prefix'] = false;
$this->options['emulate_database'] = true;
$this->options['default_tablespace'] = false;
$this->options['default_text_field_length'] = 2000;
$this->options['result_prefetching'] = false;
* Sets up the date/time format
$this->exec('ALTER SESSION SET NLS_DATE_FORMAT = "' .
$format .
'"');
* Adds an driver-specific LIMIT clause to the query
* @param string $query query to modify
* @param integer $limit limit the number of rows
* @param integer $offset start reading from given offset
* @return string the modified query
$e = explode("select ",strtolower($query));
$e2 = explode(" from ",$e[1]);
// taken from http://svn.ez.no/svn/ezcomponents/packages/Database
$query =
'SELECT * FROM (SELECT a.*, ROWNUM dctrn_rownum FROM (' .
$query
.
') a WHERE ROWNUM <= ' .
$max .
') WHERE dctrn_rownum >= ' .
$min;
$query =
'SELECT a.* FROM (' .
$query .
') a WHERE ROWNUM <= ' .
$max;