获取数据库架构信息,SqlConnection.GetSchema()

MSDN:提供资料:

http://technet.microsoft.com/zh-cn/library/system.data.sqlclient.sqlconnection.getschema(v=vs.100).aspx

数据架构集合CollectionName

image

如果要查看字符串可以这样弹出查看实例,

string stra = SqlClientMetaDataCollectionNames.Databases;

这里可以查看获取架构

using (SqlConnection dbConnection = new SqlConnection(connBuilder.ConnectionString))
                    {
                        dbConnection.Open();
                       DataTable tempDataTable = dbConnection.GetSchema(SqlClientMetaDataCollectionNames.Databases);//获取架构
                        //DataTable tempDataTable = dbConnection.GetSchema("Databases");   //和相同效果       
                        string stra = SqlClientMetaDataCollectionNames.Databases;//这里可以查看获得的字符串
                        MessageBox.Show(stra);
                        string str = "";
                        foreach (DataRow dr in tempDataTable.Rows)
                        {
                            str += dr[0] + "   " + dr[1]+"  "+dr[2]+"\n";
                        }
                        MessageBox.Show(str);                     
                        dbConnection.Close();
                    }

 

或者大家直接使用这个DataTable tempDataTable = dbConnection.GetSchema("Databases"); 方法:先关的属性表格如下:             

Columns 用于 GetSchema 方法的常数,表示 Columns 集合。
Databases 用于 GetSchema 方法的常数,表示 Databases 集合
ForeignKeys GetSchema 方法的常数,表示 ForeignKeys 集合。
IndexColumns GetSchema 方法的常数,表示 IndexColumns 集合。
Indexes 用于 GetSchema 方法的常数,表示 Indexes 集合。
Parameters 用于 GetSchema 方法的常数,表示 Parameters 集合。
ProcedureColumns GetSchema 方法的常数,表示 ProcedureColumns 集合。
Procedures 用于 GetSchema 方法的常数,表示 Procedures 集合。
Tables 用于 GetSchema 方法的常数,表示 Tables 集合。
UserDefinedTypes 用于 GetSchema 方法的常数,表示 UserDefinedTypes 集合。
ViewColumns 用于 GetSchema 方法的常数,表示 ViewColumns 集合。
Users 用于 GetSchema 方法的常数,表示 Users 集合。
Views   用于 GetSchema 方法的常数,表示 Views 集合。

写完之后发现这篇文章,可以做参考,实现功能是一样的:http://www.cnblogs.com/jinzhao/archive/2009/07/29/1534023.html

posted @ 2013-11-18 12:46  开源控Meteor(OSMeteor)  阅读(1128)  评论(0编辑  收藏  举报