Не знаю, как это исправить.Итак, у меня есть импортированная таблица (скриншот) Пациент (# 1) и Диагноз (Диагностика) (# 2) из MS SQL Server.Первая таблица содержит полный список данных пациента и внешний ключ для id_diagnoz, в котором указаны Stage и Name_diagnoz.Таблица (# 3) - это готовая опция для вывода данных без лишних столбцов, но это не проблема. "select Pacient.id_patient, Pacient.Name, Pacient.Surname, Pacient.Middle_name, Pacient.Age, Pacient.Legal_address_Clinic, Diagnoz.Name_diagnoz, Diagnoz.Stage FROM Pacient JOIN Diagnoz ON Diagnoz.id_diagnoz = Pacient.id_diagnoz";
Это хорошо работает.
Проблема чтобы при заполнении данных из текстовых полей и комбинированных списков мне сначала нужно было сгенерировать id_diagnoz из таблицы (# 2), а затем добавить другую информацию в таблицу пациентов (# 1).Однако я не мог сделать это в течение нескольких часов, потому что даже ошибка не привела.Поэтому я решил отдельно добавить id_diagnoz в пустую таблицу (# 4), чтобы убедиться, что мой запрос работает.Пожалуйста, помогите мне с этим id_diagnoz и другими данными, помещенными в таблицу пациента.
private void button5_Click(object sender, EventArgs e)
{
using (SqlConnection conn = new SqlConnection("Data Source=DESKTOP-R551818\\SQLEXPRESS;Initial Catalog=Fond;Integrated Security=True"))
{
SqlDataAdapter comm = new SqlDataAdapter("SELECT id_diagnoz FROM Diagnoz WHERE Name_diagnoz = '" + comboBox2.Text + "' and Stage = '" + comboBox3.Text + "'" +
"INSERT INTO Pacient (Name, Surname, Middle_name, Column__Passport, Legal_address_Clinic, Age)" +
" VALUES (@Name, @Surname, @Middle, @Passport, @AddresClinic, @Age) ", conn);
comm.SelectCommand.Parameters.AddWithValue("@Name", textBox3.Text);
comm.SelectCommand.Parameters.AddWithValue("@Surname", textBox4.Text);
comm.SelectCommand.Parameters.AddWithValue("@Middle", textBox5.Text);
comm.SelectCommand.Parameters.AddWithValue("@Passport", maskedTextBox1.Text);
comm.SelectCommand.Parameters.AddWithValue("@AddresClinic", comboBox1.Text);
comm.SelectCommand.Parameters.AddWithValue("@Age", textBox7.Text);
DataSet ds = new DataSet();
comm.Fill(ds);
//da.Fill(ds, "Pacient");
dataGridView2.DataSource = ds.Tables[0];
conn.Close();
conn.Open();
}}
Снимок экрана для понимания