我想知道,如何检索Sql-Database模式信息,例如表,列及其在表之间的关系等等。我知道如果我在主数据库和目标数据库上执行不同的特定查询,我可能会这样做。但有没有有效的方法来检索数据库模式?
提前致谢。
答案 0 :(得分:6)
在codeplex上看看这个项目: http://dbschemareader.codeplex.com/releases/view/71696
答案 1 :(得分:3)
您可以通过GetSchema
类的Connection
方法获取database metadata。
答案 2 :(得分:2)
答案 3 :(得分:1)
使用GetSchema
类的SqlConnection
方法:
DataTable t = _conn.GetSchema("Tables")
;
有关详细信息,请阅读MSDN文章Retrieving Database Schema Information (ADO.NET).。
答案 4 :(得分:0)
GetSchema和架构集合
每个.NET Framework托管提供程序中的Connection类实现GetSchema方法,该方法用于检索有关当前连接的数据库的架构信息,并且从GetSchema方法返回的架构信息以DataTable的形式提供。 GetSchema方法是一个重载方法,它提供可选参数,用于指定要返回的架构集合,以及限制返回的信息量。
http://msdn.microsoft.com/en-us/library/ms254934(v=vs.110).aspx