none
如何获取Access字段类型 RRS feed

  • 问题

  • 使用GetOleDbSchemaTable能获得Access的字段列表,但好像无法获取Access的字段的数据类型,描述等。
    请问如何才能获取字段的其他相关信息。
    2009年11月23日 2:51

答案

  • 是可以的
    比如我下面这段的代码 是获取表TestTable中的列的信息

    OleDbConnection conn = new OleDbConnection(ConfigurationManager.ConnectionStrings["DatabaseForTestConnectionString"].ConnectionString);
             conn.Open();
             DataTable table = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new object[] { null, null, "TestTable", null });
             this.GridView2.DataSource = table.DefaultView;
             this.GridView2.DataBind();
            
             conn.Close();

    页面上显示
    TABLE_CATALOGTABLE_SCHEMATABLE_NAMECOLUMN_NAMECOLUMN_GUIDCOLUMN_PROPIDORDINAL_POSITIONCOLUMN_HASDEFAULTCOLUMN_DEFAULTCOLUMN_FLAGSIS_NULLABLEDATA_TYPETYPE_GUIDCHARACTER_MAXIMUM_LENGTHCHARACTER_OCTET_LENGTHNUMERIC_PRECISIONNUMERIC_SCALEDATETIME_PRECISIONCHARACTER_SET_CATALOGCHARACTER_SET_SCHEMACHARACTER_SET_NAMECOLLATION_CATALOGCOLLATION_SCHEMACOLLATION_NAMEDOMAIN_CATALOGDOMAIN_SCHEMADOMAIN_NAMEDESCRIPTION
        TestTable DateTimeColumn     4   122 7           0                    
        TestTable ID     1   90 3       10                        
        TestTable IntColumn     2   122 3       10                        
        TestTable StringColumn     3  
    DATA_TYPE  就是数据类型
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!My blog~~~
    • 已标记为答案 ogra 2009年11月23日 4:06
    2009年11月23日 3:33
    版主

全部回复

  • 是可以的
    比如我下面这段的代码 是获取表TestTable中的列的信息

    OleDbConnection conn = new OleDbConnection(ConfigurationManager.ConnectionStrings["DatabaseForTestConnectionString"].ConnectionString);
             conn.Open();
             DataTable table = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new object[] { null, null, "TestTable", null });
             this.GridView2.DataSource = table.DefaultView;
             this.GridView2.DataBind();
            
             conn.Close();

    页面上显示
    TABLE_CATALOGTABLE_SCHEMATABLE_NAMECOLUMN_NAMECOLUMN_GUIDCOLUMN_PROPIDORDINAL_POSITIONCOLUMN_HASDEFAULTCOLUMN_DEFAULTCOLUMN_FLAGSIS_NULLABLEDATA_TYPETYPE_GUIDCHARACTER_MAXIMUM_LENGTHCHARACTER_OCTET_LENGTHNUMERIC_PRECISIONNUMERIC_SCALEDATETIME_PRECISIONCHARACTER_SET_CATALOGCHARACTER_SET_SCHEMACHARACTER_SET_NAMECOLLATION_CATALOGCOLLATION_SCHEMACOLLATION_NAMEDOMAIN_CATALOGDOMAIN_SCHEMADOMAIN_NAMEDESCRIPTION
        TestTable DateTimeColumn     4   122 7           0                    
        TestTable ID     1   90 3       10                        
        TestTable IntColumn     2   122 3       10                        
        TestTable StringColumn     3  
    DATA_TYPE  就是数据类型
    Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!My blog~~~
    • 已标记为答案 ogra 2009年11月23日 4:06
    2009年11月23日 3:33
    版主
  • 谢谢。

    2009年11月23日 4:07