Tablodaki üç field birlikte unique oluyor. Yani aynı saat ders ve günün veritabanına tekrar girilişini engellemeyi nasıl gerçekleştirebiliriz? Teşekkürler
< Bu mesaj bu kişi tarafından değiştirildi cycloner -- 11 Mart 2010; 14:11:33 >
DersProgramı(Sınıf-Gün-Saat-Ders) ve Ogrenci(OgrenciID-ad-Soyad-Bolum-Sınıf-) adında iki tablom var. Mesela öğrenci 10-C de ise 10-C ye ait ders programı görüntülenmesi gerekiyor.
protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e) { { MembershipUser currentUser = Membership.GetUser(); Guid currentUserId = (Guid)currentUser.ProviderUserKey; e.Command.Parameters["@OgrenciID"].Value = currentUserId; } } Bu kodla öğrenci idsini alıp login olan öğrencinin kim olduğunu bulup ona göre işlem yaptırmam lazım
SELECT saat, [Pazartesi], [Salı], [Çarşamba], [Perşembe], [Cuma] FROM ( SELECT Sınıf, Gün, Saat, Ders FROM DersProg) AS source PIVOT ( MAX(Ders) FOR Gün IN ([Pazartesi], [Salı], [Çarşamba],[Perşembe],[Cuma]) ) AS pvt WHERE ([OgrenciID] = @OgrenciID)
Yukarıdaki gibi birşey yaptım. Altı çizil yer hariç çalışıyor fakat hangi sınıfta olduğunu bulduramadım. Teşekkürler
Kullandığın tabloda Öğrenci ID yok, Ogrenci tablosunuda içine alacak şekilde join'lemen lazım.
SELECT saat, [Pazartesi], [Salı], [Çarşamba], [Perşembe], [Cuma] FROM ( SELECT Sınıf, Gün, Saat, Ders FROM DersProg) AS source PIVOT ( MAX(Ders) FOR Gün IN ([Pazartesi], [Salı], [Çarşamba],[Perşembe],[Cuma]) ) AS pvt inner join Ogrenci ogr on pvt.Sınıf=ogr.Sınıf WHERE (ogr.OgrenciID = @OgrenciID)
< Resime gitmek için tıklayın >
Tablodaki üç field birlikte unique oluyor. Yani aynı saat ders ve günün veritabanına tekrar girilişini engellemeyi nasıl gerçekleştirebiliriz?
Teşekkürler
< Bu mesaj bu kişi tarafından değiştirildi cycloner -- 11 Mart 2010; 14:11:33 >