diff options
author | Andrey Andreev <narf@bofh.bg> | 2012-03-05 13:23:57 +0100 |
---|---|---|
committer | Andrey Andreev <narf@bofh.bg> | 2012-03-05 13:23:57 +0100 |
commit | 74496c268ae7199082cad86e0fea65687d78a2c9 (patch) | |
tree | 7a02e9961dda1e6949c4cbd986c894ffb9ed15a3 /system/database/drivers/odbc | |
parent | bb5dae46256cdcb0bcd204b6fa2fc628da6afb88 (diff) | |
parent | cc5af53346397846f2035dc2bf6a2c2f9b0cd4ab (diff) |
Merge upstream branch
Diffstat (limited to 'system/database/drivers/odbc')
-rw-r--r-- | system/database/drivers/odbc/odbc_driver.php | 33 | ||||
-rw-r--r-- | system/database/drivers/odbc/odbc_result.php | 35 |
2 files changed, 41 insertions, 27 deletions
diff --git a/system/database/drivers/odbc/odbc_driver.php b/system/database/drivers/odbc/odbc_driver.php index fc4d1d365..a6e3dd7eb 100644 --- a/system/database/drivers/odbc/odbc_driver.php +++ b/system/database/drivers/odbc/odbc_driver.php @@ -123,18 +123,6 @@ class CI_DB_odbc_driver extends CI_DB { // -------------------------------------------------------------------- /** - * Version number query string - * - * @return string - */ - protected function _version() - { - return 'SELECT version() AS ver'; - } - - // -------------------------------------------------------------------- - - /** * Execute the query * * @param string an SQL query @@ -369,25 +357,16 @@ class CI_DB_odbc_driver extends CI_DB { // -------------------------------------------------------------------- /** - * The error message string + * Error * - * @return string - */ - protected function _error_message() - { - return odbc_errormsg($this->conn_id); - } - - // -------------------------------------------------------------------- - - /** - * The error message number + * Returns an array containing code and message of the last + * database error that has occured. * - * @return int + * @return array */ - protected function _error_number() + public function error() { - return odbc_error($this->conn_id); + return array('code' => odbc_error($this->conn_id), 'message' => odbc_errormsg($this->conn_id)); } // -------------------------------------------------------------------- diff --git a/system/database/drivers/odbc/odbc_result.php b/system/database/drivers/odbc/odbc_result.php index b040c1e72..042c915f9 100644 --- a/system/database/drivers/odbc/odbc_result.php +++ b/system/database/drivers/odbc/odbc_result.php @@ -237,6 +237,41 @@ class CI_DB_odbc_result extends CI_DB_result { return $rs_assoc; } + // -------------------------------------------------------------------- + + /** + * Query result. Array version. + * + * @return array + */ + public function result_array() + { + if (count($this->result_array) > 0) + { + return $this->result_array; + } + elseif (($c = count($this->result_object)) > 0) + { + for ($i = 0; $i < $c; $i++) + { + $this->result_array[$i] = (array) $this->result_object[$i]; + } + } + elseif ($this->result_id === FALSE) + { + return array(); + } + else + { + while ($row = $this->_fetch_assoc()) + { + $this->result_array[] = $row; + } + } + + return $this->result_array; + } + } /* End of file odbc_result.php */ |