summaryrefslogtreecommitdiff
path: root/framework/3rdParty/adodb/drivers/adodb-sqlitepo.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'framework/3rdParty/adodb/drivers/adodb-sqlitepo.inc.php')
-rw-r--r--framework/3rdParty/adodb/drivers/adodb-sqlitepo.inc.php62
1 files changed, 62 insertions, 0 deletions
diff --git a/framework/3rdParty/adodb/drivers/adodb-sqlitepo.inc.php b/framework/3rdParty/adodb/drivers/adodb-sqlitepo.inc.php
new file mode 100644
index 00000000..b8489e97
--- /dev/null
+++ b/framework/3rdParty/adodb/drivers/adodb-sqlitepo.inc.php
@@ -0,0 +1,62 @@
+<?php
+/*
+V4.81 3 May 2006 (c) 2000-2006 John Lim (jlim#natsoft.com.my). All rights reserved.
+ Released under both BSD license and Lesser GPL library license.
+ Whenever there is any discrepancy between the two licenses,
+ the BSD license will take precedence.
+
+ Portable version of sqlite driver, to make it more similar to other database drivers.
+ The main differences are
+
+ 1. When selecting (joining) multiple tables, in assoc mode the table
+ names are included in the assoc keys in the "sqlite" driver.
+
+ In "sqlitepo" driver, the table names are stripped from the returned column names.
+ When this results in a conflict, the first field get preference.
+
+ Contributed by Herman Kuiper herman#ozuzo.net
+*/
+
+if (!defined('ADODB_DIR')) die();
+
+include_once(ADODB_DIR.'/drivers/adodb-sqlite.inc.php');
+
+class ADODB_sqlitepo extends ADODB_sqlite {
+ var $databaseType = 'sqlitepo';
+
+ function ADODB_sqlitepo()
+ {
+ $this->ADODB_sqlite();
+ }
+}
+
+/*--------------------------------------------------------------------------------------
+ Class Name: Recordset
+--------------------------------------------------------------------------------------*/
+
+class ADORecordset_sqlitepo extends ADORecordset_sqlite {
+
+ var $databaseType = 'sqlitepo';
+
+ function ADORecordset_sqlitepo($queryID,$mode=false)
+ {
+ $this->ADORecordset_sqlite($queryID,$mode);
+ }
+
+ // Modified to strip table names from returned fields
+ function _fetch($ignore_fields=false)
+ {
+ $this->fields = array();
+ $fields = @sqlite_fetch_array($this->_queryID,$this->fetchMode);
+ if(is_array($fields))
+ foreach($fields as $n => $v)
+ {
+ if(($p = strpos($n, ".")) !== false)
+ $n = substr($n, $p+1);
+ $this->fields[$n] = $v;
+ }
+
+ return !empty($this->fields);
+ }
+}
+?> \ No newline at end of file