StringCollection sc = new StringCollection();
IDataReader r = cmd.ExecuteReader(CommandBehavior.SchemaOnly);
DataRowCollection drc = r.GetSchemaTable().Rows;
foreach (DataRow row in drc)
sc.Add(row["ColumnName"].ToString());

解决方案 »

  1.   

    foe( int i = 0 ; i < ds.Tables[0].Columns.Count ; i++)
         Console.writeline ( ds.Tables[0].Columns[0].ColumnName );
      

  2.   

    我想动态创建DataSet,然后再从其取出相关信息,
    这样还可以做到吗??
      

  3.   

    string connectionString = "你的连接串";
    string sql = "SELECT * FROM SYSCOLUMNS WHERE ID = OBJECT_ID('表名')";
    SqlConnection conn = new SqlConnection(connectionString);
    SqlDataAdapter adapter = new SqlDataAdapter(sql,conn);
    DataSet ds = new DataSet();
    adapter.Fill(ds,"表名");foreach(DataColumn col in ds.Tables["表名"].Columns)
    {
          ....
    }