我尝试获取所有数据库的所有表名。 但是 GetSchema("Tables") 只返回一个数据库的名称。 这很奇怪,因为我没有使用任何限制,并且在许多具有读/写权限的数据库上拥有 dbowner。
获取所有表信息需要什么?
最佳答案
它只会返回当前上下文数据库中的表列表。 要获取所有表的列表,您需要遍历每个数据库。
我在我的一个开源项目中使用过它 - http://dbdoc.codeplex.com
你必须做这样的事情:
foreach (Microsoft.SqlServer.Management.Smo.Database db in server.Databases)
foreach (Microsoft.SqlServer.Management.Smo.Table tbl in db.Tables)
tables.Add(tbl.Name); // Temp variable
关于c# - DbConnection.GetSchema ("Tables") 仅为一个数据库返回表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7253481/