From e1580571d2b7777bb815b0ab57279c625c182997 Mon Sep 17 00:00:00 2001 From: Andrey Andreev Date: Fri, 16 Nov 2012 16:17:54 +0200 Subject: Improve DB field_data() for Oracle (and fix its max_length for MSSQL / SQLSRV) --- system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php') diff --git a/system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php b/system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php index 58c673e8c..93f30c82c 100644 --- a/system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php +++ b/system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php @@ -197,9 +197,9 @@ class CI_DB_pdo_sqlsrv_driver extends CI_DB_pdo_driver { */ protected function _list_columns($table = '') { - return 'SELECT '.$this->escape_identifiers('column_name') - .' FROM '.$this->escape_identifiers('information_schema.columns') - .' WHERE '.$this->escape_identifiers('table_name').' = '.$this->escape($table); + return 'SELECT COLUMN_NAME + FROM INFORMATION_SCHEMA.Columns + WHERE TABLE_NAME = '.$this->escape($table); } // -------------------------------------------------------------------- @@ -233,7 +233,7 @@ class CI_DB_pdo_sqlsrv_driver extends CI_DB_pdo_driver { $retval[$i] = new stdClass(); $retval[$i]->name = $query[$i]->COLUMN_NAME; $retval[$i]->type = $query[$i]->DATA_TYPE; - $retval[$i]->max_length = ($query[$i]->CHARACTER_MAXIMUM_LENGTH > 0) ? $query[$i]->NUMERIC_PRECISION : $query[$i]->CHARACTER_MAXIMUM_LENGTH; + $retval[$i]->max_length = ($query[$i]->CHARACTER_MAXIMUM_LENGTH > 0) ? $query[$i]->CHARACTER_MAXIMUM_LENGTH : $query[$i]->NUMERIC_PRECISION; $retval[$i]->default = $query[$i]->COLUMN_DEFAULT; } -- cgit v1.2.3-24-g4f1b