[英]Datatable column names
我正在開發一個執行大量SQL查詢的應用程序。 目前,我試圖用SQL查詢的結果填充組合框,在該組合框中,我使用以下代碼獲取數據庫中的所有表名:
tablesComboBox.DataSource = dataLayer.Query("SELECT * FROM INFORMATION_SCHEMA.TABLES");
tablesComboBox.DisplayMember = "TABLES";
和
public DataTable Query(string sql)
{
var result = new DataTable();
using (var connection = GetConnection())
using (var command = new SqlCommand(sql, connection))
{
connection.Open();
result.Load(command.ExecuteReader(CommandBehavior.CloseConnection));
}
return result;
}
我的問題是我無法填充組合框,因為我不知道返回的數據表的列名,也無法弄清楚如何訪問它。 “表格”不起作用。 我敢肯定有一個簡單的答案,但目前無所適從。
要獲取表的列名,請使用
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='your table'
我認為您不需要數據表名稱。 您只需要表的列名。 嘗試這個。
tablesComboBox.DisplayMember = "TABLE_NAME";
ps優化您的代碼,您可以真正做到這一點,僅獲取表名:
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME <> 'sysdiagrams'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.