比如:TABLE表中有字段id,name,sex,age,ID的字段说明是   ID号,name的说明是姓名,sex字段的说明是性别,age字段说明是年龄。我想读出ID号、姓名、性别、年龄这四个说明

解决方案 »

  1.   

    select id,name,sex,age from TABLE
      

  2.   

    description            OleDbConnection conn = new OleDbConnection();
                conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb;";
                conn.Open();            DataTable dt = conn.GetSchema( "columns", new string[] { null, null, "表名" } );
                conn.Close();
    datatable的“description”列就是字段的说明
      

  3.   

    http://topic.csdn.net/u/20070213/11/4bd5d604-8c0f-4ed1-9c8d-ab84e2d807af.html
    http://topic.csdn.net/t/20040506/23/3037359.html
      

  4.   

     for (int i = 0; i < dt.Columns.Count; i++)
                 {
                     Console.WriteLine(dt.Columns[i].ColumnName + "-" + dt.Columns[i].Caption + "-" + dt.Columns[i].DataType);
                 }
     有 DESCRIPTION-DESCRIPTION-System.String
    怎么读取表每个字段的
    DESCRIPTION呢
      

  5.   

     DataView dataview = dt.DefaultView;         for (int i = 0; i < dataview.Count; i++)
             {             Console.WriteLine(dataview[i]["COLUMN_NAME"] + "==" + dataview[i]["DESCRIPTION"]);
                 
             }
    可以得到字段名称和表述了
    问题是
    字段的排序不是以在表中的先后显示的 而是一字段的名称排序的

    字段  说明
    id   编号
    name 姓名
    addr 地址

      for (int i = 0; i < dataview.Count; i++)
    这里得到的是
    addr 地址
    id   编号
    name 姓名
    默认以字段名称排序的 不是表中原有设计显示的
      

  6.   


                OleDbConnection conn = new OleDbConnection();
                conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb;"; 
                conn.Open();
                DataTable dt = conn.GetSchema( "columns", new string[] { null, null, "表名" } );
                conn.Close();            DataRow[] dr = dt.Select( "", "ordinal_position" );            for ( int i = 0; i < dr.Length; i++ )
                {
                    Console.WriteLine( dr[i]["COLUMN_NAME"] + "==" + dr[i]["DESCRIPTION"] ); 
                }