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

Bildirim

Icon
Error

Ayarlar
Son mesaja git Go to first unread
mehmetzekikir  
#1 Gönderildi : 6 Mayıs 2014 Salı 14:30:40(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.
Merhabalar

10. Dersimizde Triger gibi konular işlenmiştir,

Konu ile ilgili sorularınızı buradan sorabilirsiniz

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...
thanks mehmetzekikir: 9 Kişi mesajın için Teşekkür Etti.
orhan.karakasli 26.06.2014(UTC) tarihinde, Abdi Yılmaz 10.09.2014(UTC) tarihinde, szgnblt 29.01.2015(UTC) tarihinde, Burcu 12.02.2015(UTC) tarihinde, harununaldi 6.08.2015(UTC) tarihinde, firat.kilic 6.01.2016(UTC) tarihinde, aliuysal 16.06.2016(UTC) tarihinde, mehmet2001 26.08.2016(UTC) tarihinde, VedatM 17.09.2016(UTC) tarihinde
gulsss  
#2 Gönderildi : 9 Mayıs 2014 Cuma 14:06:47(UTC)
gulsss

Sıralama: Newbie

Gruplar: Registered
Katılan: 9.05.2014(UTC)
Mesajlar: 1
Turkey
Konum: JHH

Merhabalar,

Excell command buton ile sql verilerini bağlayıp butona tıklayarak istediğim raporu almak istiyorum raporum hazır tek sıkıntım kullandığım Erp programında oluşan fatura num excell kopyalayıp o kopyaladığım fatura numaralarının(200-300 tane) raporunu çekmek istiyorum ama her gün fatura sayısı değişiyor doğal olarak belli bir aralık veremiyorum. sorgum aşağıdaki gibidir bunu nasıl düzenleyebilirim. şuan ki haliyle tek tek A1 sütuna giriş yapıp butona tıklıyorum bu işlemi günde 200-300 kere yapmak büyük bir iş yükü bu konuda acilen yardımcı olabilir misiniz ?

Teşekkürler,

Kod:

ALTER  PROCEDURE [dbo].[EXCEL_DEPO_PLANLAMA_SEVKİYAT_ADRESLERİ_FATURANO]
(
@FATURA_NO AS VARCHAR(20)
)
AS

SELECT CASE WHEN ISNULL(SH.LOGICALREF,-1)='-1' THEN C.LOGICALREF ELSE SH.LOGICALREF END AS SEVK_İD,
             I.FICHENO AS FN,    
             ISNULL(SUM(POCKET),0) AS KOLİ,
             ISNULL(SUM(BRUTKG),0) AS KG,
             ISNULL(SUM(BRUTVOL),0) AS HACİM,
             ISNULL(SUM(S.NETTOTAL+S.VATAMOUNT),0) AS CİRO,
             TARİH AS PLANLAMA_TARİHİ
FROM LG_014_01_INVOICE I
       INNER JOIN STLN_014 S ON S.INVOICEREF=I.LOGICALREF
       INNER JOIN CLCARD_014 C ON C.LOGICALREF=I.CLIENTREF
       LEFT JOIN
       (      SELECT ENTİD,CONVERT(CHAR(10),PF.TARİH,104) TARİH
             FROM   SEMPAOCEAN6.DBO.SİPARİS_FİSİ SF
                    INNER JOIN SEMPAOCEAN6.DBO.PLANLAMA_HAREKETİ PH ON PH.SİPARİS_İD=SF.SİPARİS_İD
                    INNER JOIN SEMPAOCEAN6.DBO.PLANLAMA_FİSİ PF ON PF.FİS_İD=PH.FİS_İD
             GROUP BY ENTİD,CONVERT(CHAR(10),PF.TARİH,104)
       ) SEMPA ON SEMPA.ENTİD=I.LOGICALREF
       LEFT JOIN LG_014_SHIPINFO SH ON SH.LOGICALREF=I.SHIPINFOREF
WHERE
       I.FICHENO=@FATURA_NO
GROUP BY I.FICHENO,CONVERT(CHAR(10),I.DATE_,104),TARİH,C.LOGICALREF,SH.LOGICALREF
ORDER BY I.FICHENO,CONVERT(CHAR(10),I.DATE_,104)

GO

Düzenle Moderatör Tarafından 9 Mayıs 2014 Cuma 14:12:08(UTC)  | Sebep: Sebep Bildirilmesi

mehmetzekikir  
#3 Gönderildi : 9 Mayıs 2014 Cuma 14:17:47(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: gulsss Go to Quoted Post
Merhabalar,

Excell command buton ile sql verilerini bağlayıp butona tıklayarak istediğim raporu almak istiyorum raporum hazır tek sıkıntım kullandığım Erp programında oluşan fatura num excell kopyalayıp o kopyaladığım fatura numaralarının(200-300 tane) raporunu çekmek istiyorum ama her gün fatura sayısı değişiyor doğal olarak belli bir aralık veremiyorum. sorgum aşağıdaki gibidir bunu nasıl düzenleyebilirim. şuan ki haliyle tek tek A1 sütuna giriş yapıp butona tıklıyorum bu işlemi günde 200-300 kere yapmak büyük bir iş yükü bu konuda acilen yardımcı olabilir misiniz ?

Teşekkürler,

Kod:

ALTER  PROCEDURE [dbo].[EXCEL_DEPO_PLANLAMA_SEVKİYAT_ADRESLERİ_FATURANO]
(
@FATURA_NO AS VARCHAR(20)
)
AS

SELECT CASE WHEN ISNULL(SH.LOGICALREF,-1)='-1' THEN C.LOGICALREF ELSE SH.LOGICALREF END AS SEVK_İD,
             I.FICHENO AS FN,    
             ISNULL(SUM(POCKET),0) AS KOLİ,
             ISNULL(SUM(BRUTKG),0) AS KG,
             ISNULL(SUM(BRUTVOL),0) AS HACİM,
             ISNULL(SUM(S.NETTOTAL+S.VATAMOUNT),0) AS CİRO,
             TARİH AS PLANLAMA_TARİHİ
FROM LG_014_01_INVOICE I
       INNER JOIN STLN_014 S ON S.INVOICEREF=I.LOGICALREF
       INNER JOIN CLCARD_014 C ON C.LOGICALREF=I.CLIENTREF
       LEFT JOIN
       (      SELECT ENTİD,CONVERT(CHAR(10),PF.TARİH,104) TARİH
             FROM   SEMPAOCEAN6.DBO.SİPARİS_FİSİ SF
                    INNER JOIN SEMPAOCEAN6.DBO.PLANLAMA_HAREKETİ PH ON PH.SİPARİS_İD=SF.SİPARİS_İD
                    INNER JOIN SEMPAOCEAN6.DBO.PLANLAMA_FİSİ PF ON PF.FİS_İD=PH.FİS_İD
             GROUP BY ENTİD,CONVERT(CHAR(10),PF.TARİH,104)
       ) SEMPA ON SEMPA.ENTİD=I.LOGICALREF
       LEFT JOIN LG_014_SHIPINFO SH ON SH.LOGICALREF=I.SHIPINFOREF
WHERE
       I.FICHENO=@FATURA_NO
GROUP BY I.FICHENO,CONVERT(CHAR(10),I.DATE_,104),TARİH,C.LOGICALREF,SH.LOGICALREF
ORDER BY I.FICHENO,CONVERT(CHAR(10),I.DATE_,104)

GO



Merhabalar

Excel in çalışma mantığını tam olarak bilmiyorum


Ama söyle bir yol belki işinize yarar ,

Kod:
@FaturaCount = Select Count(*) From Fatura WHERE Tarih = getdate()


Sonra fatura sayısını aldığımıza göre ilgili fatura numaralarına temp tabloya atarız sonra

Kod:

declare @sayi = 1
while @sayi <= @FaturaCount
begin

declare FaturaNo = (SELECT FaturaNo From #temp WHERE faturaId = @sayi)

-- Sonrada sizin kodu yazarak işi halledersiniz 

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...
salihhh  
#4 Gönderildi : 9 Ekim 2014 Perşembe 02:03:14(UTC)
salihhh

Sıralama: Newbie

Gruplar: Registered
Katılan: 3.10.2014(UTC)
Mesajlar: 1
Turkey
Konum: istanbul

İleride yönelmek istedigim iş zekası alanı için yaptığım çalışmalara bu videoları karşılık beklemeden koymanız ve ayırdığınız zaman ve emekler için size gerçekten çok teşekkür ediyorum .
mehmetzekikir  
#5 Gönderildi : 10 Ekim 2014 Cuma 14:12:15(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: salihhh Go to Quoted Post
İleride yönelmek istedigim iş zekası alanı için yaptığım çalışmalara bu videoları karşılık beklemeden koymanız ve ayırdığınız zaman ve emekler için size gerçekten çok teşekkür ediyorum .




rica ederim
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...
tevfikbulut  
#6 Gönderildi : 15 Ekim 2014 Çarşamba 17:26:23(UTC)
tevfikbulut

Sıralama: Newbie

Gruplar: Registered
Katılan: 14.10.2014(UTC)
Mesajlar: 1
Bay
Turkey
Konum: İstanbul

Hocam öncelikle emeğinize sağlık. Çok güzel çalışmalar olmuş. Benim size birkaç sorum olacaktı. Bunlar;

Soru 1

1. Sorgu = SELECT * FROM xxx
2. Sorgu = SELECT TOP 100 PERCENT * FROM xxx

Bu iki sorgu da tüm kayıtları getiriyor. O halde neden TOP 100 PERCENT ?

Soru 2

TSQL ve SQL Server Dersleri 3. Dersinizde Database Diagrams performans açısından verimli olmadığını söylemiştiniz.

Bu bağlamda Database Diagram silersek for again key de olmayacak.

Peki bu durumda biz alt kategorileri olan bir alanı sildiğimizde nasıl bir işlem yapmalıyız ?

Tüm alt kategorilerin active özelliğini 0 ile update mi yapacağız ?

Biraz örnekle bu konuyu açmanız mümkün mü acaba ?

Teşekkürler...
mehmetzekikir  
#7 Gönderildi : 15 Ekim 2014 Çarşamba 21:09:20(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: tevfikbulut Go to Quoted Post
Hocam öncelikle emeğinize sağlık. Çok güzel çalışmalar olmuş. Benim size birkaç sorum olacaktı. Bunlar;

Soru 1

1. Sorgu = SELECT * FROM xxx
2. Sorgu = SELECT TOP 100 PERCENT * FROM xxx

Bu iki sorgu da tüm kayıtları getiriyor. O halde neden TOP 100 PERCENT ?

Soru 2

TSQL ve SQL Server Dersleri 3. Dersinizde Database Diagrams performans açısından verimli olmadığını söylemiştiniz.

Bu bağlamda Database Diagram silersek for again key de olmayacak.

Peki bu durumda biz alt kategorileri olan bir alanı sildiğimizde nasıl bir işlem yapmalıyız ?

Tüm alt kategorilerin active özelliğini 0 ile update mi yapacağız ?

Biraz örnekle bu konuyu açmanız mümkün mü acaba ?

Teşekkürler...


1. Soru: select * la 100 percent sonucu aynı ama işlevi aynı değil , 100 percent yerine 90 da yazarsak %90 top ı almış oluruz,

2. Soru: diagram oluşturmadan da foreign key olusturabilirsiniz,

Alt kategorilerden birini silerseniz direk olarak dediğiniz gibi 0 yaparız active i


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...
jaws  
#8 Gönderildi : 24 Aralık 2014 Çarşamba 22:23:38(UTC)
jaws

Sıralama: Newbie

Gruplar: Registered
Katılan: 24.12.2014(UTC)
Mesajlar: 1
Turkey
Konum: fethiye

merhaba. video için teşekkür ederim.
bir isteğim var trigger ile ilgili.
tablo tablom var ve içinde id ve adsoyad alanım var. id alanı integer tipinde ve otomatik artan şeklinde. kayıtlardan 5 nolu kaydı sildiğimde 5'ten sonra gelen kayıtlar yine 5 nolu kayıttan başlasın istiyroum. Bunun için nasıl bir trigger yazmalıyız. şimdiden teşekkürler...
maytas  
#9 Gönderildi : 25 Aralık 2014 Perşembe 17:49:21(UTC)
maytas

Sıralama: Advanced Member

Gruplar: Registered
Katılan: 24.11.2014(UTC)
Mesajlar: 34
Turkey

5 Kere Teşekkür Etti.
2 Mesajına Toplam 2 Kere Teşekkür Edildi.
Paylaştığınız videolarda stok takibini triger vasıtasıyla yaptırıyor ve o şekilde tavsiye ediyorsunuz.
Stok takibinin girişlerin toplamından çıkışların toplamını çıkartan dinamik bir sorgu ile yapılması daha doğru olmaz mı, her ne kadar sizin tavsiye ettiğiniz yönteme göre daha yavaş olsa bile?
mehmetzekikir  
#10 Gönderildi : 28 Aralık 2014 Pazar 18:09:06(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: jaws Go to Quoted Post
merhaba. video için teşekkür ederim.
bir isteğim var trigger ile ilgili.
tablo tablom var ve içinde id ve adsoyad alanım var. id alanı integer tipinde ve otomatik artan şeklinde. kayıtlardan 5 nolu kaydı sildiğimde 5'ten sonra gelen kayıtlar yine 5 nolu kayıttan başlasın istiyroum. Bunun için nasıl bir trigger yazmalıyız. şimdiden teşekkürler...



Şu şekilde yaparsın hocam

Kod:

SET IDENTITY_INSERT test ON
insert test (id,name) values (7,'aaa')
SET IDENTITY_INSERT test OFF


Önce identity özelliğini devre dışı bırakıyoruz, sonra tekrar aktif ediyoruz, id yi max ile alarak id nin karşılıgına ekleyebilirsiniz
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...
mehmetzekikir  
#11 Gönderildi : 28 Aralık 2014 Pazar 18:09:43(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: maytas Go to Quoted Post
Paylaştığınız videolarda stok takibini triger vasıtasıyla yaptırıyor ve o şekilde tavsiye ediyorsunuz.
Stok takibinin girişlerin toplamından çıkışların toplamını çıkartan dinamik bir sorgu ile yapılması daha doğru olmaz mı, her ne kadar sizin tavsiye ettiğiniz yönteme göre daha yavaş olsa bile?



triger da kafa rahat oluyor , her türlü yol olabilir tabiki
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...
ondercesmeci  
#12 Gönderildi : 24 Şubat 2015 Salı 09:55:53(UTC)
ondercesmeci

Sıralama: Newbie

Gruplar: Registered
Katılan: 24.02.2015(UTC)
Mesajlar: 1
Turkey
Konum: ÇORUM

Teşekkür ederim.
firat.kilic  
#13 Gönderildi : 6 Ocak 2016 Çarşamba 10:39:44(UTC)
firat.kilic

Sıralama: Newbie

Gruplar: Registered
Katılan: 9.12.2015(UTC)
Mesajlar: 3
Turkey
Konum: istanbul

5 Kere Teşekkür Etti.
1 Mesajına Toplam 1 Kere Teşekkür Edildi.
mehmet hocam merhabalar,
öncelikle akılda kalıcı,akıcı ve duru anlatımınız için size minnettarım. üstelik bunları karşılık beklemeden yapıyorsunuz ki bu sektörümüzün en ihtiyacı olan şeydir: karşılık beklemeden bilgi paylaşımı. hocam ben "tsql ve sql server dersleri" paylaşımındaki 10 dersi de bitirdim. büyük ölçüde anladım fakat devam etmek istiyorum izlemem gereken görsel eğitim dersi sıralaması nasıl olmalı acaba?

ayrıca dikkat ettim sitenize uzun zamandır uğramıyorsunuz, burası programlama ve veritabanına meraklılar için keşfedilmemiş bir cennet. temennim en kısa sürede dönüp bizleri bilgileriniz ile aydınlatmanız
mehmetzekikir  
#14 Gönderildi : 6 Ocak 2016 Çarşamba 14:52:35(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: firat.kilic Go to Quoted Post
mehmet hocam merhabalar,
öncelikle akılda kalıcı,akıcı ve duru anlatımınız için size minnettarım. üstelik bunları karşılık beklemeden yapıyorsunuz ki bu sektörümüzün en ihtiyacı olan şeydir: karşılık beklemeden bilgi paylaşımı. hocam ben "tsql ve sql server dersleri" paylaşımındaki 10 dersi de bitirdim. büyük ölçüde anladım fakat devam etmek istiyorum izlemem gereken görsel eğitim dersi sıralaması nasıl olmalı acaba?

ayrıca dikkat ettim sitenize uzun zamandır uğramıyorsunuz, burası programlama ve veritabanına meraklılar için keşfedilmemiş bir cennet. temennim en kısa sürede dönüp bizleri bilgileriniz ile aydınlatmanız


merhabalar

teşekkür ederim iyi dilekleriniz için , siteye ugruyorum biri birşey sorarsa cevap veriyorum :) içerik suan için girmiyorum, çok yogunuz çünkü bu aralar,

size tavisyem proje derslerini izleyin sonra o proje derslerindeki gibi bir projede siz oluşturun size baya bir tecrube katacaktır,

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...
thanks mehmetzekikir: 1 Kişi mesajın için Teşekkür Etti.
firat.kilic 9.02.2017(UTC) tarihinde
aliuysal  
#15 Gönderildi : 16 Haziran 2016 Perşembe 14:30:41(UTC)
aliuysal

Sıralama: Newbie

Gruplar: Registered
Katılan: 16.06.2016(UTC)
Mesajlar: 1
Bay
Turkey
Konum: Manisa

Thanks: 11 times
İş zekası alanında ilerlemek istiyordum ve sizi takipteyim. Zamanınızı harcamanız ve çaba sarf etmenizden dolayı teşekkür ederim.
mehmetzekikir  
#16 Gönderildi : 17 Haziran 2016 Cuma 13:30:30(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: aliuysal Go to Quoted Post
İş zekası alanında ilerlemek istiyordum ve sizi takipteyim. Zamanınızı harcamanız ve çaba sarf etmenizden dolayı teşekkür ederim.


teşekkürler ali bey
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...
csharpfan  
#17 Gönderildi : 7 Eylül 2016 Çarşamba 13:17:36(UTC)
csharpfan

Sıralama: Newbie

Gruplar: Registered
Katılan: 7.09.2016(UTC)
Mesajlar: 1
Turkey
Konum: ...

Eğitimde kullanmış olduğunuz bazı database'ler var. Görsel olarak daha iyi çalışabilmem için onları kullanmak istiyorum ama bulamadım sitede. Bunların backup'ını alıp eğitim altında paylaşsanız daha güzel olmaz mı?
Aslı S.  
#18 Gönderildi : 22 Kasım 2016 Salı 20:33:00(UTC)
Aslı S.

Sıralama: Newbie

Gruplar: Registered
Katılan: 22.11.2016(UTC)
Mesajlar: 4
Turkey
Konum: İstanbul

4 Kere Teşekkür Etti.
Merhaba Hocam,

Rahatsız ediyorum. Trigger mantığını anlamak için kendi projeme uyarlamaya çalıştım ilk önce fakat olmadı Hocam, sonra da ilk defa yapacağımdan dolayı sizin paylaştığınız video'daki örneği yapmaya karar verdim. Ama son satırda;

Msg 2627, Level 14, State 1, Procedure KitapTRG, Line 50
Violation of PRIMARY KEY constraint 'PK__KitapSto__8949CCFF91C5D6BA'. Cannot insert duplicate key in object 'dbo.KitapStok'. The duplicate key value is (6).
The statement has been terminated.

diye bir hata alıyorum Hocam.

Yazdığım kod ise;

CREATE DATABASE Deneme2
USE Deneme2

CREATE TABLE Kitap (KitapNo integer primary key, Baslik char(20), YayinciAdi char (20))

INSERT INTO Kitap VALUES (1, 'A', 'A Yayınları')
INSERT INTO Kitap VALUES (2, 'B', 'B Yayınları')
INSERT INTO Kitap VALUES (3, 'C', 'C Yayınları')
INSERT INTO Kitap VALUES (4, 'D', 'D Yayınları')
INSERT INTO Kitap VALUES (5, 'E', 'E Yayınları')

SELECT * FROM Kitap

CREATE TABLE KitapStok (KitapNo integer Primary Key, KütNo integer, Miktar int)

INSERT INTO KitapStok Values (1, 1, 10)
INSERT INTO KitapStok Values (2, 1, 20)
INSERT INTO KitapStok Values (3, 1, 30)
INSERT INTO KitapStok Values (4, 1, 40)
INSERT INTO KitapStok Values (5, 1, 50)
INSERT INTO KitapStok Values (6, 2, 60)
INSERT INTO KitapStok Values (7, 2, 70)

SELECT * FROM Kitap
SELECT * FROM KitapStok

CREATE TRIGGER dbo.KitapTRG
ON dbo.Kitap
AFTER INSERT
AS
BEGIN
DECLARE @KitapNo int

SELECT @KitapNo = KitapNo FROM inserted

INSERT INTO dbo.KitapStok (KitapNo, KütNo, Miktar) VALUES (@KitapNo, 1, 25)

END

INSERT INTO Kitap (KitapNo, Baslik, YayinciAdi) VALUES (6, 'Z', 'Z Yayınları')

şeklinde. Yardımcı olursanız memnun olurum Hocam.
mehmetzekikir  
#19 Gönderildi : 22 Kasım 2016 Salı 20:47:56(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: Aslı S. Go to Quoted Post
Merhaba Hocam,

Rahatsız ediyorum. Trigger mantığını anlamak için kendi projeme uyarlamaya çalıştım ilk önce fakat olmadı Hocam, sonra da ilk defa yapacağımdan dolayı sizin paylaştığınız video'daki örneği yapmaya karar verdim. Ama son satırda;

Msg 2627, Level 14, State 1, Procedure KitapTRG, Line 50
Violation of PRIMARY KEY constraint 'PK__KitapSto__8949CCFF91C5D6BA'. Cannot insert duplicate key in object 'dbo.KitapStok'. The duplicate key value is (6).
The statement has been terminated.

diye bir hata alıyorum Hocam.

Yazdığım kod ise;

CREATE DATABASE Deneme2
USE Deneme2

CREATE TABLE Kitap (KitapNo integer primary key, Baslik char(20), YayinciAdi char (20))

INSERT INTO Kitap VALUES (1, 'A', 'A Yayınları')
INSERT INTO Kitap VALUES (2, 'B', 'B Yayınları')
INSERT INTO Kitap VALUES (3, 'C', 'C Yayınları')
INSERT INTO Kitap VALUES (4, 'D', 'D Yayınları')
INSERT INTO Kitap VALUES (5, 'E', 'E Yayınları')

SELECT * FROM Kitap

CREATE TABLE KitapStok (KitapNo integer Primary Key, KütNo integer, Miktar int)

INSERT INTO KitapStok Values (1, 1, 10)
INSERT INTO KitapStok Values (2, 1, 20)
INSERT INTO KitapStok Values (3, 1, 30)
INSERT INTO KitapStok Values (4, 1, 40)
INSERT INTO KitapStok Values (5, 1, 50)
INSERT INTO KitapStok Values (6, 2, 60)
INSERT INTO KitapStok Values (7, 2, 70)

SELECT * FROM Kitap
SELECT * FROM KitapStok

CREATE TRIGGER dbo.KitapTRG
ON dbo.Kitap
AFTER INSERT
AS
BEGIN
DECLARE @KitapNo int

SELECT @KitapNo = KitapNo FROM inserted

INSERT INTO dbo.KitapStok (KitapNo, KütNo, Miktar) VALUES (@KitapNo, 1, 25)

END

INSERT INTO Kitap (KitapNo, Baslik, YayinciAdi) VALUES (6, 'Z', 'Z Yayınları')

şeklinde. Yardımcı olursanız memnun olurum Hocam.



Merhabalar

CREATE TABLE KitapStok (KitapNo integer , KütNo integer, Miktar int)

tablosunu bu şekilde yapın primary key tanımladıgınızda aynı id den bir tane daha eklemenize izin vermez, zaten kitap stok tablosunda da o alanı primary key olarak tanımlamanız doğru olmaz
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...
thanks mehmetzekikir: 1 Kişi mesajın için Teşekkür Etti.
Aslı S. 22.11.2016(UTC) tarihinde
mehmetzekikir  
#20 Gönderildi : 6 Şubat 2017 Pazartesi 09:51:17(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: firat.kilic Go to Quoted Post
Mehmet Hocam,

Yalın ve anlaşılır anlatımınız için çok teşekkür ederim. Sql'i sizden öğrendim diyebilirim.

Ancak uzun zamandır sql ile ilgili video paylaşmıyorsunuz. Sektörde yeterince bilgi paylaşım eksikliği varken sizin gibi hocalarımızı kaybetmek bizi ziyadesiyle üzecektir.

Eğer vakit ayırabilirseniz daha farklı projeler yapmanız bizi çok mutlu eder.

örneğin: takip sistemleri, satış ve dağıtım, obs sistemleri, muhasebe programları vs.

Bu tarz projeleri csharp ile kullanıcı dostu bir arayüz ile desteklerseniz biz takipçilerinizi çok mutlu edeceksiniz.

Not: Reklamlarınıza her zaman tıklıyorum :)


:):):) Son satırı okduğumda gülmekten öldüm :) Eyvallah

Çok detaylı bir sql eğitim serisi çekicem ona hazırlanıyorum slaytları falan ayarlıyorum ortalama 5 er dakikadan 200 civarı video gelecek ,

Videoları ilk çektiğim zaman bekardım :) Şimdi evli 1 çocuk var hatta 3 ay sonra 2 numarada gelecek inşallah , o yüzden biraz aksamalar oldu , bir de malum iş hayatı ve hayat kavgası, ama herşeyi düzene koyuyorum yavaş yavaş,

10 yıla yakın bir zaman oldu iş hayatındayım bir sürü büyük holdingte ve projede çalıştım ama hiç bir iş bu video işi kadar bana keyifli gelmedi :=)
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.