logo
Welcome Guest! To enable all features please Giriş or Kayıt.

Bildirim

Icon
Error

Ayarlar
Son mesaja git Go to first unread
koray8006  
#1 Gönderildi : 26 Temmuz 2014 Cumartesi 18:30:51(UTC)
koray8006

Sıralama: Newbie

Gruplar: Registered
Katılan: 26.07.2014(UTC)
Mesajlar: 4

Hocam Merhaba
Ben stajım için Araba kiralama programı yapıyorum.bir yerde yardımınıza ihtiyacım var;
2 Tablom var.biri Filo Diğeri KiralananArabalar.
KiralananArabalar'a insert yaptıgım zaman,insert edilen araba Filo'dan trigger yardımıyla otomatik siliniyor.
Ama sorun şu ki Filo da var olmayan bir araba id sini insert ettiğim zaman kabul ediyor,halbuki orada insertion'ı engellemek istiyorum.

ALTER TRIGGER [dbo].[tgr_price]
ON [dbo].[RentingCars]
FOR INSERT
AS
BEGIN

DECLARE @carid INT

SELECT @carid = Cid FROM inserted

IF EXISTS (SELECT * FROM Fleet where id=@carid)
BEGIN

DELETE FROM Fleet where id=@carid

END
END


mehmetzekikir  
#2 Gönderildi : 31 Temmuz 2014 Perşembe 10:13:38(UTC)
mehmetzekikir

Sıralama: Administration

Gruplar: Administrators
Katılan: 6.05.2014(UTC)
Mesajlar: 670

19 Kere Teşekkür Etti.
152 Mesajına Toplam 253 Kere Teşekkür Edildi.
Originally Posted by: koray8006 Go to Quoted Post
Hocam Merhaba
Ben stajım için Araba kiralama programı yapıyorum.bir yerde yardımınıza ihtiyacım var;
2 Tablom var.biri Filo Diğeri KiralananArabalar.
KiralananArabalar'a insert yaptıgım zaman,insert edilen araba Filo'dan trigger yardımıyla otomatik siliniyor.
Ama sorun şu ki Filo da var olmayan bir araba id sini insert ettiğim zaman kabul ediyor,halbuki orada insertion'ı engellemek istiyorum.

ALTER TRIGGER [dbo].[tgr_price]
ON [dbo].[RentingCars]
FOR INSERT
AS
BEGIN

DECLARE @carid INT

SELECT @carid = Cid FROM inserted

IF EXISTS (SELECT * FROM Fleet where id=@carid)
BEGIN

DELETE FROM Fleet where id=@carid

END
END




Merhabalar

geç cevap için kusura bakma araya bayram tatili girdiği için :D

kodu soyle yazarsan sorun çözülür

Kod:

ALTER TRIGGER [dbo].[tgr_price]
ON [dbo].[RentingCars]
FOR INSERT
AS
BEGIN
	
	DECLARE @carid	INT
	
	SELECT @carid = Cid FROM inserted
	
	IF NOT EXISTS (SELECT * FROM Fleet where id=@carid)
	BEGIN

	DELETE FROM Fleet RentingCars id=@carid

	END
END


Sql Server 2016 Eğitimiz 19 Mayıs tarihinde başlayacaktır. 32 Saat Olup Ücret 1450 TL + KDV'dir. Kayıt ve ayrıntılar için tıklayınız

twitter.com/dbakademi
Dua ve teşekkür en büyük servetlere bedel...


Bu konudaki kullanıcılar
Guest
Forumu Atla  
Bu foruma yeni konular postalayamazsınız.
Bu forumda ki konulara yeni posta gönderemezsiniz.
Bu forumdaki postalarınızı silemezsiniz.
Bu forumdaki postalarınızı düzenleyemezsiniz.
Bu forumda anketler yaratamazsınız.
Bu forumdaki anketlere oy veremezsiniz.