Updates
diff --git a/system/database/drivers/sqlsrv/sqlsrv_result.php b/system/database/drivers/sqlsrv/sqlsrv_result.php
index 4582003..bf0abd1 100644
--- a/system/database/drivers/sqlsrv/sqlsrv_result.php
+++ b/system/database/drivers/sqlsrv/sqlsrv_result.php
@@ -63,11 +63,11 @@
 	function list_fields()
 	{
 		$field_names = array();
-		while ($field = sqlsrv_get_field($this->result_id))
+		foreach(sqlsrv_field_metadata($this->result_id) as $offset => $field)
 		{
-			$field_names[] = $field->name;
+			$field_names[] = $field['Name'];
 		}
-
+		
 		return $field_names;
 	}
 
@@ -84,18 +84,18 @@
 	function field_data()
 	{
 		$retval = array();
-		while ($field = sqlsrv_get_field($this->result_id))
+		foreach(sqlsrv_field_metadata($this->result_id) as $offset => $field)
 		{
-			$F				= new stdClass();
-			$F->name		= $field->name;
-			$F->type		= $field->type;
-			$F->max_length	= $field->max_length;
+			$F 				= new stdClass();
+			$F->name 		= $field['Name'];
+			$F->type 		= $field['Type'];
+			$F->max_length	= $field['Size'];
 			$F->primary_key = 0;
 			$F->default		= '';
-
+			
 			$retval[] = $F;
 		}
-
+		
 		return $retval;
 	}