繁体   English   中英

检索SQL Server数据库架构和对象并反映在.Net应用程序中

[英]Retrieving SQL Server database schema and objects and reflect in a .Net application

在.Net应用程序中将SQL Server数据库架构及其所有对象反映出来的最简单方法是什么?

基本上,我希望我的应用程序扫描数据库架构并向我展示所有表和其他对象。 此外,我还应该能够探索所有表列及其属性(类型,约束等)。

我打算使用数据访问应用程序块来满足我的数据访问需求。 是否也符合上述规定?

您可以使用所需的任何数据访问方法-您只需要在数据库上运行正确的查询即可。 本文似乎是您想要的一个很好的例子。

SQL Server提供了一些可以使用的系统视图,例如sys.tables列出所有表, sys.columns所有列等。

MSDN有一个常见问题解答

尽管可以在SQL Server的元数据表上使用查询,但是访问此信息的最简单方法是使用Sql Server管理对象(SMO)

若要使用此示例,请参考Microsoft.SqlServer.ConnectionInfo,Microsoft.SqlServer.Management.Sdk.Sfc和Microsoft.SqlServer.Smo。

using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Common;

   var sqlConnection = new SqlConnection(@"Data Source=(local);Integrated Security=SSPI");
    var server = new Server(new ServerConnection(sqlConnection));

    foreach (Database database in server.Databases)
    {
        foreach (Table table in database.Tables)
        {
            Console.WriteLine("{0}: {1}", database.Name, table.Name);       
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM