數據庫中獲取所有表的名字我使用VS2010 ,.NET 4.0,MS SQL SERVER 2008。與C#
我想我知道如何從數據庫中獲得所有的表名。但是我錯了。通過表名,我可以獲得視圖名稱。但是當我爲Views創作時,我只能看到Views。我不知道爲什麼會發生這種情況。
這裏是我的代碼,我曾嘗試:
public DataTable getAllTables(string serverName, string dbName, string authenticationType, string Login, string pass)
{
using (SqlConnection sqlConn = Return_Conn(serverName, dbName, authenticationType, Login, pass))
{
sqlConn.Open();
DataTable dt = sqlConn.GetSchema("Tables");
DataTable dt1 = new DataTable();
string[] column = { "TABLE_NAME" };
dt1 = dt.DefaultView.ToTable("dd", false, column);
sqlConn.Close();
return dt1;
}
}
public DataTable getAllViews(string serverName, string dbName, string authenticationType, string Login, string pass)
{
using (SqlConnection sqlConn = Return_Conn(serverName, dbName, authenticationType, Login, pass))
{
sqlConn.Open();
DataTable dt = sqlConn.GetSchema("Views");
DataTable dt1 = new DataTable();
string[] column = { "TABLE_NAME" };
dt1 = dt.DefaultView.ToTable("dd", false, column);
sqlConn.Close();
return dt1;
}
}
在DataTable dt = sqlConn.GetSchema("Tables");
這條線,DT包含了所有的表與視圖一起。在DT,TABLE_TYPE爲查看都呈現「查看」 和表,顯示「基本表」。
但DataTable dt = sqlConn.GetSchema("Views");
這條線,DT只包含的意見。
這裏有什麼問題?我怎麼能解決這個問題?
可能重複查詢 [?如何獲得一個MSSQL數據庫內的所有表(http://stackoverflow.com/questions/10517991 /如何對GET-全表-的-A-MSSQL數據庫) – spajce
@spajce我不要求不同的解決方案。我在問如何解決我寫的內容。它不在重複列表中。 –
好..所以,有一個簡單的解決方案,從鏈接:) – spajce