我有一个链接到 C# 应用程序的 SQl Server 数据库。数据绑定到应用程序中的 datagridview。这适用于从一个表命令中进行简单选择,如下面的代码所示。但是,我希望 datagridview 根据更复杂的查询显示来自多个表的数据,但是当我尝试用复杂的查询替换下面的命令时,会出现很多错误:
SELECT DISTINCT f_name, l_name, grade, mentor_name
FROM [Person] P, [Exam] E, [Mentor] M
WHERE P.Person_id = E.Person_id
AND P.Person_id = M.Person_id
如果有人有任何关于表示我的数据的其他方式的建议,我愿意接受。
public partial class Form1 : Form {
private BindingSource bindingSource1 = new BindingSource();
public Form1() {
InitializeComponent();
dataGridView1.Dock = DockStyle.Fill;
}
private void Form1_Load(object sender, EventArgs e) {
dataGridView1.DataSource = bindingSource1;
GetData("SELECT * from Person");
}
private void GetData(string command) {
String connectionString = "Data Source=MY-PC\\USER;Initial Catalog=MyDatabase;Integrated Security=True";
SqlDataAdapter dataAdapter = new SqlDataAdapter(command, connectionString);
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource1.DataSource = table;
dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
}
}
谢谢。