summaryrefslogtreecommitdiffstats
path: root/system/database/drivers/mssql/mssql_result.php
diff options
context:
space:
mode:
authorAndrey Andreev <narf@bofh.bg>2012-11-16 00:27:00 +0100
committerAndrey Andreev <narf@bofh.bg>2012-11-16 00:27:00 +0100
commitf1e1b7789b9adaf0b38b8386c99f46fc37507c8f (patch)
treeaffb83fbbedb2e8e7279fe3edb6682027782d001 /system/database/drivers/mssql/mssql_result.php
parent10ecc84a3215ca02c11855e399a211f4e5cb60b1 (diff)
Improve DB field_data() for MSSQL / SQL Server
Diffstat (limited to 'system/database/drivers/mssql/mssql_result.php')
-rw-r--r--system/database/drivers/mssql/mssql_result.php16
1 files changed, 7 insertions, 9 deletions
diff --git a/system/database/drivers/mssql/mssql_result.php b/system/database/drivers/mssql/mssql_result.php
index c74c70abf..a8f850d72 100644
--- a/system/database/drivers/mssql/mssql_result.php
+++ b/system/database/drivers/mssql/mssql_result.php
@@ -94,16 +94,14 @@ class CI_DB_mssql_result extends CI_DB_result {
public function field_data()
{
$retval = array();
- while ($field = mssql_fetch_field($this->result_id))
+ for ($i = 0, $c = $this->num_field(); $i < $c; $i++)
{
- $F = new stdClass();
- $F->name = $field->name;
- $F->type = $field->type;
- $F->max_length = $field->max_length;
- $F->primary_key = 0;
- $F->default = '';
-
- $retval[] = $F;
+ $field = mssql_fetch_field($this->result_id, $i);
+
+ $retval[$i] = new stdClass();
+ $retval[$i]->name = $field->name;
+ $retval[$i]->type = $field->type;
+ $retval[$i]->max_length = $field->max_length;
}
return $retval;