首页 > 编程 > .NET > 正文

使用.Net获取OLEDB数据库的架构.

2024-07-10 13:03:09
字体:
来源:转载
供稿:网友
获得sql server数据库的信息可以使用dmo组件或直接获取系统表的信息,例如表,视图,存储过程等存在sysobjects表中,列的信息存在syscolumns表中。如果要获取oledb数据库的信息,例如access的数据库。

首先引用com组件microsoft activex data object 2.x library和microsoft ado ext. 2.x for ddl...
下面是c#代码:

string strconnection = “provider=microsoft.jet.oledb.4.0;data source=“c://test.mdb“;

adodb.connection conn = new adodb.connectionclass();
conn.connectionstring = strconnection;

conn.open( strconnection , "admin","" , 0 );


adox.catalog ctg = new adox.catalogclass();
ctg.let_activeconnection( conn );

// get tables info from oledb database
for( int i = 0 ; i < ctg.tables.count-1; i++)
{
console.writeline( ctg.tables[ i ].name );
}

// get columns information from a table named test.
adox.table table = ctg.tables[ "test" ];
for( int i = 0 ; i < table.columns.count - 1; i++)
{
adox.column column = table.columns[ i ];
console.writeline( column.name + “/t“ + columns.type.tostring() + column.defaultsize.tostring() );
}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表