using System;
using System.Data;
using System.Data.SqlClient;
namespace Chapter12
{
class SchemaTable
{
static void Main(string[] args)
{
// connection string
string connString = @"
server = .;
integrated security = true;
database = northwind
";
// query
string sql = @"
select
*
from
employees
";
// create connection
SqlConnection conn = null;
SqlDataReader rdr = null;
try
{
conn = new SqlConnection(connString);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
rdr = cmd.ExecuteReader();
// store Employees schema in a data table
//首先调用DataTable.GetSchemaTable()函数
//把执行的结果放置到DataTable中。
DataTable schema = rdr.GetSchemaTable();
// display info from each row in the data table.
// each row describes a column in the database table.
//两个foreach循环,先是行循环再是列循环
foreach (DataRow row in schema.Rows)
{
foreach (DataColumn col in schema.Columns)
Console.WriteLine(col.ColumnName + " = " + row[col]);
Console.WriteLine("----------------");
}
}
catch (Exception e)
{
Console.WriteLine("Error Occurred: " + e);
}
finally
{
rdr.Close();
conn.Close();
}
}
}
}
//所有代码来自书籍《Begining C# Databases From Novice to Professional》