triger ile primary key olmayan bir tabloya kayıt girebiliyorum
ama priimary key olduğunda insert işlemi başarısız oluyor
bunun nedeni nedir neyi atlıyor aloabiliriz ?
insert trigeri
-
- Üye
- Mesajlar: 140
- Kayıt: 11 Oca 2009 10:25
insert trigeri
bilmezler bilmediklerinide bilmezler ama kendilerini bilir sanırlar
Re: insert trigeri
TABLODA VAR OLAN primary kodu tekrar giriyorsunuzdur.
Bir kelimenin anlamını öğretsen bile yeter..
Re: insert trigeri
yada alan primary key olarak tanımlanmıştır ve not null olarak belirtilmiştir,
ancak autoinc olarak belirtilmemiştir ve insertte doğrudan değer atanmıyordur...
not null belirtilmiş alana değer atanmadığı için hata alıyor olabilirsiniz...
ancak autoinc olarak belirtilmemiştir ve insertte doğrudan değer atanmıyordur...
not null belirtilmiş alana değer atanmadığı için hata alıyor olabilirsiniz...
bazen yükselmek için önce dibi görmek gerekir...
forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...
forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...
-
- Üye
- Mesajlar: 140
- Kayıt: 11 Oca 2009 10:25
Re: insert trigeri
conari hocam nasıl yani aşagıda kullanıdıgm kod bloğu aynen budur primary key otomatik artan sayı
Kod: Tümünü seç
CREATE TRIGGER [CARIME_GIT_YAZ] ON [dbo].[CAR_HESAPLAR]
FOR INSERT AS
BEGIN
DECLARE
@c_kod AS VARCHAR(30) ,
@c_adi AS VARCHAR(30) ,
@TABLOM AS VARCHAR(60)
SELECT
@c_kod = c_kod ,
@c_adi = c_adi
FROM INSERTED
SET @TABLOM='S_C_HESAPLAR'
EXEC (
' INSERT INTO '+@TABLOM+'
(
c_kod ,
c_adi
)
VALUES
( " ' +@c_kod+ ' " ,
" ' +@c_adi+' "
) '
)
END
bilmezler bilmediklerinide bilmezler ama kendilerini bilir sanırlar
Re: insert trigeri
S_C_HESAPLAR tablosundaki "c_kod" primary edilmiştir.
Bir kelimenin anlamını öğretsen bile yeter..
Re: insert trigeri
Otomatik artan sayı yani IDENTITY olan bir alana direk INSERT işlemi yapamazsınız.
Ya INSERT işleminde bu alanı kullanmayacaksınız (otomatik kendisi artacak) veya SET IDENTITY_INSERT ON/OFF komutlarını kullanacaksınız.
Ya INSERT işleminde bu alanı kullanmayacaksınız (otomatik kendisi artacak) veya SET IDENTITY_INSERT ON/OFF komutlarını kullanacaksınız.