3 V4.22 15 Apr 2004 (c) 2000-2004 John Lim (jlim@natsoft.com.my). All rights reserved.
4 Released under both BSD license and Lesser GPL library license.
5 Whenever there is any discrepancy between the two licenses,
6 the BSD license will take precedence.
7 Set tabs to 4 for best viewing.
9 Latest version is available at http://php.weblogs.com/
13 include_once(ADODB_DIR . "/drivers/adodb-ibase.inc.php");
15 class ADODB_firebird extends ADODB_ibase
17 var $databaseType = "firebird";
19 function ADODB_firebird()
26 $arr['dialect'] = $this->dialect;
27 switch ($arr['dialect']) {
30 $s = 'Firebird Dialect 1';
33 $s = 'Firebird Dialect 2';
37 $s = 'Firebird Dialect 3';
40 $arr['version'] = ADOConnection::_findvers($s);
41 $arr['description'] = $s;
45 // Note that Interbase 6.5 uses this ROWS instead - don't you love forking wars!
46 // SELECT col1, col2 FROM table ROWS 5 -- get 5 rows
47 // SELECT col1, col2 FROM TABLE ORDER BY col1 ROWS 3 TO 7 -- first 5 skip 2
48 function &SelectLimit($sql, $nrows = -1, $offset = -1, $inputarr = false, $secs = 0)
51 if ($nrows >= 0) $str .= "FIRST $nrows ";
52 $str .= ($offset >= 0) ? "SKIP $offset " : '';
54 $sql = preg_replace('/^[ \t]*select/i', $str, $sql);
56 $rs =& $this->CacheExecute($secs, $sql, $inputarr);
58 $rs =& $this->Execute($sql, $inputarr);
67 class ADORecordSet_firebird extends ADORecordSet_ibase
70 var $databaseType = "firebird";
72 function ADORecordSet_firebird($id, $mode = false)
74 $this->ADORecordSet_ibase($id, $mode);