C# не может получить datatable для заполнения
У меня есть текстовое поле для ввода данных и кнопка для поиска этих данных, возвращенных в datagridview. Данные не передаются в datatable.
private void button1_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection("Data Source = AIRS1C49; Initial Catalog = BoundBook; Integrated Security = True"); SqlCommand cmd = new SqlCommand(); SqlDataAdapter sda = new SqlDataAdapter(@"SELECT Firearm.Serial_Number, Firearm.Manufacturer, Firearm.Country_of_Mfg, Firearm.Model, Firearm.Type, Firearm.[Action], Firearm.Gage_Caliber, Firearm.Status, Firearm.Acquired, Firearm.Disposed, Acquisition.Acq_ID, Acquisition.Acq_Date, Acquisition.Acq_Reason, Acquisition.Serial_Number AS Expr1, Acquisition.Acq_Note, Acquisition.DataEntryDate_A, Acquisition.FFL_ID, FFL.FFL_ID AS Expr2, FFL.FFL_Name, FFL.FFL_Address1, FFL.FFL_Address2, FFL.FFL_City, FFL.FFL_State, FFL.FFL_ZipCode, FFL.FFL_Email, FFL.FFL_Phone, FFL.FFL_License_Number, FFL.FFL_Expiration_Date, Disposition.Disp_ID, Disposition.Disp_Date, Disposition.Disp_Reason, Disposition.Serial_Number AS Expr3, Disposition.FFL_ID AS Expr4, Disposition.Disp_Note, Disposition.DataEntryDate_D FROM Firearm INNER JOIN Acquisition ON Firearm.Serial_Number = Acquisition.Serial_Number INNER JOIN FFL ON Acquisition.FFL_ID = FFL.FFL_ID INNER JOIN Disposition ON Firearm.Serial_Number = Disposition.Serial_Number AND FFL.FFL_ID = Disposition.FFL_ID WHERE FireArm.Serial_Number = '" + textBox1.Text + "%'", con); DataSet dt = new DataSet(); sda.Fill(dt); dataGridView1.DataSource = dt;
Что я уже пробовал:
Я пробовал использовать меньший запрос, но получаю те же результаты, ничего не передавая в datatable. Кто-то сказал мне, что мне нужно открыть и закрыть соединение, поэтому я добавил мошенничество.Open(); и con.Close(); но это не имело никакого значения, поэтому я удалил их. Я использую ту же строку подключения в другой форме, и она работает там, поэтому я не могу себе представить, что это проблема.
Есть идеи?