summaryrefslogtreecommitdiffstats
path: root/system/database/drivers/odbc
diff options
context:
space:
mode:
authorDerek Allard <derek.allard@ellislab.com>2008-02-05 00:20:34 +0100
committerDerek Allard <derek.allard@ellislab.com>2008-02-05 00:20:34 +0100
commit9b3e7b5f2d4ec4feae793ef90454506addbb19e1 (patch)
tree866d6efe488c04a118cdb015991452e56d1722ec /system/database/drivers/odbc
parent613c6f605666031aa5b60c2dca568ac2d3a3c264 (diff)
Added and documented Active Record caching.
Made AR fully database-prefix aware
Diffstat (limited to 'system/database/drivers/odbc')
-rw-r--r--system/database/drivers/odbc/odbc_driver.php7
1 files changed, 7 insertions, 0 deletions
diff --git a/system/database/drivers/odbc/odbc_driver.php b/system/database/drivers/odbc/odbc_driver.php
index 03c0e6a86..88fff4365 100644
--- a/system/database/drivers/odbc/odbc_driver.php
+++ b/system/database/drivers/odbc/odbc_driver.php
@@ -424,6 +424,13 @@ class CI_DB_odbc_driver extends CI_DB {
// we may need "`item1` `item2`" and not "`item1 item2`"
if (ctype_alnum($item) === FALSE)
{
+ if (strpos($item, '.') !== FALSE)
+ {
+ $aliased_tables = implode(".",$this->ar_aliased_tables).'.';
+ $table_name = substr($item, 0, strpos($item, '.')+1);
+ $item = (strpos($aliased_tables, $table_name) !== FALSE) ? $item = $item : $this->dbprefix.$item;
+ }
+
// This function may get "field >= 1", and need it to return "`field` >= 1"
$lbound = ($first_word_only === TRUE) ? '' : '|\s|\(';