Get table schema from SqlDataReader : Column Type Name : ADO.Net C# Examples


C# Examples » ADO.Net » Column Type Name »

 

Get table schema from SqlDataReader









    
using  System;
using  System.Data;
using  System.Data.SqlClient;

class  MainClass
{
      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  rdr  =  cmd.ExecuteReader();

                  DataTable  schema  =  rdr.GetSchemaTable();

                  foreach  (DataRow  row  in  schema.Rows)  
                  {
                        foreach  (DataColumn  col  in  schema.Columns)
                              Console.WriteLine(col.ColumnName  +  "  =  "  +  row[col]);
                  }
                  rdr.Close();
            }
            catch(Exception  e)
            {
                  Console.WriteLine("Error  Occurred:  "  +  e);
            }
            finally
            {
                  conn.Close();
            }
      }
}
    
   
  
   



Output

ColumnName = ID
ColumnOrdinal = 0
ColumnSize = 4
NumericPrecision = 10
NumericScale = 255
IsUnique = False
IsKey =
BaseServerName =
BaseCatalogName =
BaseColumnName = ID
BaseSchemaName =
BaseTableName =
DataType = System.Int32
AllowDBNull = True
ProviderType = 8
IsAliased =
IsExpression =
IsIdentity = False
IsAutoIncrement = False
IsRowVersion = False
IsHidden =
IsLong = False
IsReadOnly = False
ProviderSpecificDataType = System.Data.SqlTypes.SqlInt32
DataTypeName = int
XmlSchemaCollectionDatabase =
XmlSchemaCollectionOwningSchema =
XmlSchemaCollectionName =
UdtAssemblyQualifiedName =
NonVersionedProviderType = 8
ColumnName = FirstName
ColumnOrdinal = 1
ColumnSize = 10
NumericPrecision = 255
NumericScale = 255
IsUnique = False
IsKey =
BaseServerName =
BaseCatalogName =
BaseColumnName = FirstName
BaseSchemaName =
BaseTableName =
DataType = System.String
AllowDBNull = True
ProviderType = 10
IsAliased =
IsExpression =
IsIdentity = False
IsAutoIncrement = False
IsRowVersion = False
IsHidden =
IsLong = False
IsReadOnly = False
ProviderSpecificDataType = System.Data.SqlTypes.SqlString
DataTypeName = nchar
XmlSchemaCollectionDatabase =
XmlSchemaCollectionOwningSchema =
XmlSchemaCollectionName =
UdtAssemblyQualifiedName =
NonVersionedProviderType = 10
ColumnName = LastName
ColumnOrdinal = 2
ColumnSize = 10
NumericPrecision = 255
NumericScale = 255
IsUnique = False
IsKey =
BaseServerName =
BaseCatalogName =
BaseColumnName = LastName
BaseSchemaName =
BaseTableName =
DataType = System.String
AllowDBNull = True
ProviderType = 10
IsAliased =
IsExpression =
IsIdentity = False
IsAutoIncrement = False
IsRowVersion = False
IsHidden =
IsLong = False
IsReadOnly = False
ProviderSpecificDataType = System.Data.SqlTypes.SqlString
DataTypeName = nchar
XmlSchemaCollectionDatabase =
XmlSchemaCollectionOwningSchema =
XmlSchemaCollectionName =
UdtAssemblyQualifiedName =
NonVersionedProviderType = 10
ColumnName = Salary
ColumnOrdinal = 3
ColumnSize = 8
NumericPrecision = 15
NumericScale = 255
IsUnique = False
IsKey =
BaseServerName =
BaseCatalogName =
BaseColumnName = Salary
BaseSchemaName =
BaseTableName =
DataType = System.Double
AllowDBNull = True
ProviderType = 6
IsAliased =
IsExpression =
IsIdentity = False
IsAutoIncrement = False
IsRowVersion = False
IsHidden =
IsLong = False
IsReadOnly = False
ProviderSpecificDataType = System.Data.SqlTypes.SqlDouble
DataTypeName = float
XmlSchemaCollectionDatabase =
XmlSchemaCollectionOwningSchema =
XmlSchemaCollectionName =
UdtAssemblyQualifiedName =
NonVersionedProviderType = 6
ColumnName = Birthday
ColumnOrdinal = 4
ColumnSize = 8
NumericPrecision = 23
NumericScale = 3
IsUnique = False
IsKey =
BaseServerName =
BaseCatalogName =
BaseColumnName = Birthday
BaseSchemaName =
BaseTableName =
DataType = System.DateTime
AllowDBNull = True
ProviderType = 4
IsAliased =
IsExpression =
IsIdentity = False
IsAutoIncrement = False
IsRowVersion = False
IsHidden =
IsLong = False
IsReadOnly = False
ProviderSpecificDataType = System.Data.SqlTypes.SqlDateTime
DataTypeName = datetime
XmlSchemaCollectionDatabase =
XmlSchemaCollectionOwningSchema =
XmlSchemaCollectionName =
UdtAssemblyQualifiedName =
NonVersionedProviderType = 4


HTML code for linking to this page:

Follow Navioo On Twitter

C# Examples

 Navioo ADO.Net
» Column Type Name