Я использую эту строку подключения для подключения к SQL ServerКак заполнить TreeView из SQL Server динамически, чтобы получить все имена таблиц и столбцов
Я пытаюсь заполнить узлы ... но я не могу для этого.
Я могу получить только имена таблиц, но не дочерние узлы (т.е. имена столбцов)
connetionString = "Data Source=" + textBox1.Text + ";Initial Catalog=" + comboBox1.Text + ";User ID=" + textBox2.Text + ";Password=" + textBox3.Text;
sql = "SELECT * FROM [sys].[tables]";
connection = new SqlConnection(connetionString);
TreeView mytree = new TreeView();
try
{
connection.Open();
command = new SqlCommand(sql, connection);
adapter.SelectCommand = command;
adapter.Fill(ds, "SQL Temp Table");
adapter.Dispose();
command.Dispose();
connection.Close();
treeView1.Nodes.Clear();
treeView1.Sort();
for (i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
{
treeView1.Nodes.Add(ds.Tables[0].Rows[i].ItemArray[0].ToString());
for (j = 0; j <= ds.Tables[0].Columns.Count - 1; j++)
{
treeView1.Nodes.Add(ds.Tables[0].Columns[j].ToString());
}
}
}
Чтобы получить имена столбцов, вам нужно выбрать из 'sys.columns'; 'object_id' в' sys.columns' соответствует 'object_id' в' sys.tables' –
Спасибо за ваш ответ. позвольте мне попробовать @marc_s ... –