各位大侠,小妹初学C#,才疏学浅,现有一个简单的问题向大家请教。我想取得Access中某一数据表中的所有字段名,并把它们存在一个数组中,不知如何做呢?

解决方案 »

  1.   

    如果你返回了一个datasetforeach(DataColumn dc in dataset.Tables[0].Columns)
    {
        //这里取出所有的字段名
        Console.WriteLine(dc.ColumnName);
    }
      

  2.   

    先寫sql語句﹐然后得到dataset或dataviewforeach(DataColumn d in dataset.Tables[0].Columns)
    {
        
        Console.WriteLine(d.ColumnName);
    }
      

  3.   

    可以通过SQL语句获得,但我忘了,
    最好返回DATATABLE,然后查这个DATATABLE的架构信息。
    foreach(DataColumn dc in dataset.Tables["Table1"].Columns)
    {
        Response.Write(dc.ColumnName);
    }
      

  4.   

    this.conn.Open();
    System.Data.OleDb.OleDbDataReader rs = this.cmd.ExecuteReader();
    while(rs.Read())
    {
    string[] arr = new string[rs.FieldCount];
    for(int i=0; i<rs.FieldCount; i++)
    {
    arr[i] = rs.GetName(i);
    }
    break;
    }
    this.conn.Close();
      

  5.   

    OleDbDataReader 的执行效率比 DataSet 要好。
    上面的语句有个错误,请把string[] arr = null 放在循环外
      

  6.   

    OleDbConnection cnOle = new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0 ;Data Source =" + Server.MapPath("address.mdb"));
    cnOle.Open();
    DataTable dt = cnOle.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,new object[]{null,null,null});//获取Access数据库中所有表的信息DataTable dt = cnOle.GetOleDbSchemaTable(OleDbSchemaGuid.Columns,new object[]{null,null,"users"}); //获取users表的字段信息