Csharp/C Sharp/Database ADO.net/Result Set
Get result data from SqlDataReader by type: decimal, string, int and boolean
<source lang="csharp"> using System; using System.Data; using System.Data.SqlClient;
class TypedMethods { static void Main(string[] args) { string connString = "server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI"; string sql = @"select * from employee"; SqlConnection conn = new SqlConnection(connString); try { conn.Open(); SqlCommand cmd = new SqlCommand(sql, conn); SqlDataReader reader = cmd.ExecuteReader(); while(reader.Read()) { Console.WriteLine( "{0}\t {1}\t\t {2}\t {3}", // nvarchar reader.GetString(0).PadRight(30), // money reader.GetDecimal(1), // smallint reader.GetInt16(2), // bit reader.GetBoolean(3)); } reader.Close(); } catch(Exception e) { Console.WriteLine("Error Occurred: " + e); } finally { conn.Close(); } } }
</source>
Result set info: column Name, column Type, type name
<source lang="csharp"> using System; using System.Data; using System.Data.SqlClient;
class ResultSetInfo{ static void Main(string[] args) { string connString = "server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI"; string sql = @"select FirstName, LastName from Employee"; SqlConnection conn = new SqlConnection(connString); try { conn.Open(); SqlCommand cmd = new SqlCommand(sql, conn); SqlDataReader reader = cmd.ExecuteReader(); Console.WriteLine("Column Name:\t{0} {1}", reader.GetName(0).PadRight(25),reader.GetName(1)); Console.WriteLine("Data Type:\t{0} {1}", reader.GetDataTypeName(0).PadRight(25), reader.GetDataTypeName(1)); while(reader.Read()) { Console.WriteLine("\t\t{0} {1}", reader.GetString(0).ToString().PadRight(25), reader.GetString(1)); } reader.Close(); } catch(Exception e) { Console.WriteLine("Error Occurred: " + e); } finally { conn.Close(); } } }
</source>
Result set info: field count and field type
<source lang="csharp"> using System; using System.Data; using System.Data.SqlClient;
class ResultSetInfo{ static void Main(string[] args) { string connString = "server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI"; string sql = @"select FirstName, LastName from Employee"; SqlConnection conn = new SqlConnection(connString); try { conn.Open(); SqlCommand cmd = new SqlCommand(sql, conn); SqlDataReader reader = cmd.ExecuteReader(); Console.WriteLine("Column Name:\t{0} {1}", reader.GetName(0).PadRight(25),reader.GetName(1)); Console.WriteLine("Data Type:\t{0} {1}", reader.GetDataTypeName(0).PadRight(25), reader.GetDataTypeName(1)); Console.WriteLine("Number of columns in a row: {0}", reader.FieldCount); Console.WriteLine(""{0}" is at index {1} and its type is: {2}", reader.GetName(0),reader.GetOrdinal("FirstName"),reader.GetFieldType(0)); Console.WriteLine(""{0}" is at index {1} and its type is: {2}", reader.GetName(1), reader.GetOrdinal("LastName"),reader.GetFieldType(1)); reader.Close(); } catch(Exception e) { Console.WriteLine("Error Occurred: " + e); } finally { conn.Close(); } } }
</source>