UgurOnline
Asistan
- Katılım
- 11 Aralık 2008
- Mesajlar
- 159
- Reaksiyon puanı
- 1
- Puanları
- 0
elimde bulunan checkboxlist'in itemleri ilaç isimlerinden oluşuyor ve veritabanından çekiliyor. hasta adını ise textboxa yazıyoruz. kaydetmek istediğim zaman HastaIlac isimli farklı bir tabloya, checkboxlist üzerinde kaç adet item seçili ise o kadar kayıt yapmasını istiyorum. aşağıdaki kodlarla son eklenen hastanın ID'sini select top ile değişkene atıyorum bu değişkenide HastaIlac tablosunda bulunan HastaID kolonuna kaydediyorum. sadece IlacID kısmında takıldım. mesela 3 adet ilaç seçili ise HastaIlac tablosuna üç adet üstüste kayıt eklensin. (burada HastaID verisi sabit). kısacası checkboxlist üzerinde seçili veri kadar kaydı, ilacların ID'sine göre nasıl yapabilirim?
mantık şu şekilde:
yarım kalan kodlarım ise:
teşekkürler
mantık şu şekilde:
yarım kalan kodlarım ise:
Kod:
string HastaEkle = @"INSERT INTO Hasta (HastaAdi) VALUES (@HastaAdi)";
SqlCommand com = new SqlCommand(HastaEkle, con);
com.Parameters.AddWithValue("@HastaAdi", textBox1.Text);
con.Open();
com.ExecuteNonQuery();
con.Close();
SqlDataAdapter adp = new SqlDataAdapter(@"SELECT Top 1 HastaID FROM Hasta ORDER BY HastaID DESC", con);
DataTable table = new DataTable();
adp.Fill(table);
int SonVeri = Int32.Parse(table.Rows[0]["HastaID"].ToString());
string HastaIlacEkle = @"INSERT INTO HastaIlac (IlacID, HastaID) VALUES (@IlacID, @HastaID)";
SqlCommand com2 = new SqlCommand(HastaIlacEkle, con);
com2.Parameters.AddWithValue("@IlacID", [B]burada takıldım[/B]);
com2.Parameters.AddWithValue("@HastaID", SonVeri);
con.Open();
com2.ExecuteNonQuery();
con.Close();