summaryrefslogtreecommitdiffstats
path: root/system/database/drivers
diff options
context:
space:
mode:
authorAndrey Andreev <narf@bofh.bg>2012-02-24 10:40:36 +0100
committerAndrey Andreev <narf@bofh.bg>2012-02-24 10:40:36 +0100
commit024ba2dffd49e26f68468acd69feebd685f63f68 (patch)
treea712da1957a5e7d1381e87ac77e6c47e884310d6 /system/database/drivers
parent11454e039fd82f2fd4ee2f186ad0317e3435f187 (diff)
Update database property when switching to a new one
Diffstat (limited to 'system/database/drivers')
-rw-r--r--system/database/drivers/mssql/mssql_driver.php13
-rw-r--r--system/database/drivers/mysql/mysql_driver.php13
-rw-r--r--system/database/drivers/mysqli/mysqli_driver.php13
-rw-r--r--system/database/drivers/sqlsrv/sqlsrv_driver.php13
4 files changed, 48 insertions, 4 deletions
diff --git a/system/database/drivers/mssql/mssql_driver.php b/system/database/drivers/mssql/mssql_driver.php
index 27b492f96..25a32f364 100644
--- a/system/database/drivers/mssql/mssql_driver.php
+++ b/system/database/drivers/mssql/mssql_driver.php
@@ -119,9 +119,20 @@ class CI_DB_mssql_driver extends CI_DB {
*/
public function db_select($database = '')
{
+ if ($database === '')
+ {
+ $database = $this->database;
+ }
+
// Note: The brackets are required in the event that the DB name
// contains reserved characters
- return @mssql_select_db('['.($database == '' ? $this->database : $database).']', $this->conn_id);
+ if (@mssql_select_db('['.$database.']', $this->conn_id))
+ {
+ $this->database = $database;
+ return TRUE;
+ }
+
+ return FALSE;
}
// --------------------------------------------------------------------
diff --git a/system/database/drivers/mysql/mysql_driver.php b/system/database/drivers/mysql/mysql_driver.php
index 207a68f14..c88a8a766 100644
--- a/system/database/drivers/mysql/mysql_driver.php
+++ b/system/database/drivers/mysql/mysql_driver.php
@@ -124,7 +124,18 @@ class CI_DB_mysql_driver extends CI_DB {
*/
public function db_select($database = '')
{
- return @mysql_select_db(($database == '' ? $this->database : $database), $this->conn_id);
+ if ($database === '')
+ {
+ $database = $this->database;
+ }
+
+ if (@mysql_select_db($database, $this->conn_id))
+ {
+ $this->database = $database;
+ return TRUE;
+ }
+
+ return FALSE;
}
// --------------------------------------------------------------------
diff --git a/system/database/drivers/mysqli/mysqli_driver.php b/system/database/drivers/mysqli/mysqli_driver.php
index 0b80f55be..dbba12e15 100644
--- a/system/database/drivers/mysqli/mysqli_driver.php
+++ b/system/database/drivers/mysqli/mysqli_driver.php
@@ -124,7 +124,18 @@ class CI_DB_mysqli_driver extends CI_DB {
*/
public function db_select($database = '')
{
- return @mysqli_select_db($this->conn_id, ($database == '' ? $this->database : $database));
+ if ($database === '')
+ {
+ $database = $this->database;
+ }
+
+ if (@mysqli_select_db($this->conn_id, $database))
+ {
+ $this->database = $database;
+ return TRUE;
+ }
+
+ return FALSE;
}
// --------------------------------------------------------------------
diff --git a/system/database/drivers/sqlsrv/sqlsrv_driver.php b/system/database/drivers/sqlsrv/sqlsrv_driver.php
index 390840094..9c50209ec 100644
--- a/system/database/drivers/sqlsrv/sqlsrv_driver.php
+++ b/system/database/drivers/sqlsrv/sqlsrv_driver.php
@@ -127,7 +127,18 @@ class CI_DB_sqlsrv_driver extends CI_DB {
*/
public function db_select($database = '')
{
- return $this->_execute('USE '.($database == '' ? $this->database : $database));
+ if ($database === '')
+ {
+ $database = $this->database;
+ }
+
+ if ($this->_execute('USE '.$database))
+ {
+ $this->database = $database;
+ return TRUE;
+ }
+
+ return FALSE;
}
// --------------------------------------------------------------------