summaryrefslogtreecommitdiffstats
path: root/system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php
diff options
context:
space:
mode:
authorAndrey Andreev <narf@bofh.bg>2012-11-16 15:17:54 +0100
committerAndrey Andreev <narf@bofh.bg>2012-11-16 15:17:54 +0100
commite1580571d2b7777bb815b0ab57279c625c182997 (patch)
tree9c829452b9b0645b27f1ca133ed6a856805637ef /system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php
parent822e74ee39fffd2c35477be2bedfb37e78eb3bc1 (diff)
Improve DB field_data() for Oracle (and fix its max_length for MSSQL / SQLSRV)
Diffstat (limited to 'system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php')
-rw-r--r--system/database/drivers/pdo/subdrivers/pdo_sqlsrv_driver.php8
1 files changed, 4 insertions, 4 deletions
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;
}