Ekleme sorgusu tabloda kayıt yoksa çalışmıyor?

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
merhaba,

sql kullanmayı pek bilmediğim için access sorgu tasarımcısı ile bazı ekleme sorgularını halletmeye çalışıyorum

mesela bir ekleme sorgusu yaptığımda bilgilerin ekleneceği tabloda kayıt sayısı sıfır ise, yani bu eklenecek kayıt o tablodaki ilk kayıt olacaksa, kayıt bu sorgu sonucunda tabloya eklenmiyor ??????

ama eğer en az bir kayıt var ise ekleme işleminde problem yaşamıyorum. bunun sebebini ve çözümünü bilen birileri var mı ?
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
Acaba sorum anlaşılmadı mı ?
Yoksa bu problemin çözümü yok mu ?
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
örneğini eklesen belkide bu kadar beklemek zorunda kalmazdın.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın realperest,

Gördüğünüz gibi maalesef eklemiyor. Ben kod kullanıyorum. Yapamadığım bir şey olursa önce sizin gibi sorgu hazırlamayla yapıyorum sonra SQL kodu kopyalayıp bir aralar eklediğim SQLBUilder da VBA koduna çeviriyorum. Onda da ufak tefek hatalar çıkıyor onları da elle düzeltiyorum.

Access Örnekleri bölümünde Kod Bankası var onun içinden ADO diye bir başlık var orayı okursanız bu konuda kod yazmanın kolay olduğunu görürsünüz.

İyi çalışmalar:)
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
mrb,

aslında örnek eklemeye gerek bile yok, yani bir ekleme sorgusunun çalışınca tabloya bilgi eklemesi lazım, ekliyor da normalde ama , eğer o ekleyeceği kayıt ilk kayıt olacaksa o zaman eklemiyor.

ya aslında o sorgu tasarımının SQL kodunu göster deyip SQL cümleciğini görebiliyorum ve bunu VBA ya kopyalayabilirim ama

VBA da sql kodunu nasıl çalıştırıyorduk onu hatırlayamıyorum bir türlü

docmd.runsql di galiba ama yazılış düzenini hatırlayamıyorum. en azından bunu hatırlayan birisi var sa o da işime yarar

teşekkürler
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
DoCmd.RunSQL (" INSERT INTO tbl_kod ( tarih, kod_tipi, kod_yazı )SELECT [Forms]![frm_kodal]![tarih] AS Deyim1, [Forms]![frm_kodal]![kod_tipi] AS Deyim2, [Forms]![frm_kodal]![kod_yazi] AS Deyim3 FROM tbl_kod GROUP BY [Forms]![frm_kodal]![tarih], [Forms]![frm_kodal]![kod_tipi], [Forms]![frm_kodal]![kod_yazi];")

diye deniyorum mesela bu sefer de kodda hata buluyor
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
iyi de, ilk kayıt olunca eklemiyor ne demek.

o zaman, bu tür sorguların hiç bir zaman çalışmaması lazım gelmez mi.

yani, kayıt ekleyeceğimiz zaman illa el ile bir kayıt mı atmak lazım.

mutlaka bir yanlışlık var.

örnek onun için lazım.
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
işte bende onu diyorum

yani illa örnek üzerinde görmek isterseniz yapar gönderirim bir tane ama, bence örneğe gerek bile yok yani ayni sorgu zaten dediğim gibi eğer o tabloda en az bir kayıt varsa çalışıyor.
Acaba bilmediğim bi şeymi var , yani bu hep böylemidir onu bilmiyorum.
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
örnek te gönderiyorum

tablo boş iken bi deneyin olmayacak, sonra manuel olarak bir kayıt girin tabloya yine deneyin olacak.
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
sayın realperest, tam bir hayalperest lik yapmışsınız :)

sen insert sorgusu kullanıyorsun ama, aynı tabloyu kendi kendisine insert etmeye çalışmışsın.

niye örnek ekle dediğimi anladın mı şimdi. ben hep 2 farklı tabloymuş gibi algıladım.

demekki, soruyu sorarken mümkün olduğu kadar açık ve basit sormak lazımmış değil mi.

şimdi; sen şunu yapmaya çalışıyorsun.

elinde bir torba olduğunu düşün. önce torbanın içindekilerini eline alıyorsun,
sonra tekrar torbanın içine koyuyorsun.

eee şimdi, torba boşsa, eline ne almış olacan ve torbaya ne koymuş olacan.
en az bir kayıt olunca doğal olarak torbaya koyacak verilerin de oluyor.

anlatabildim mi şimdi?
ayrıca, bu sorgunun çok mantıksız br sorgu olduğunu da biliyorsun değil mi.

kendi kendisine insert sorgularında, mutlaka where şartı ile bazı kayıtlar çekilir
ve insert ederken de mutlaka bazı alanları değişime uğrayarak insert edilir ki verilerin bir anlamı olsun.
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
hayır be üstadım , hiç alakası yok

dikkat et, orada dataları metin kutularından alıyor, ayna tablodaki aynı alanları aynı yere yazmıyor.

lütfen örneği bir daha inceleyin, o metin kutularının içine bir şeyler yazın ve deneyin, tabiii önce tabloya eliniz ile bir kayıt ekledikten sonra , eklendiğini göreceksiniz,


haaaaaaa, yinede hatam var sı söyleyin düzelteyim, ben zaten eğer hata yapıyorsam onu arıyorum :)
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
incelemenizi bekliyorum, ne demek istediğimi anlayacaksınız, eğer önce bir kayıt girerseniz mauel olarak tabloya


ilginize teşekkür ediyorum bu arada
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
çok çok çok özür dilerim. soruyu doğru okumamışım. kusur bakma.

ancak, bu senin haklı olduğunu çıkartmıyor tabi.

select xxx from tablo1 diyorsun, ama tablo1 de kayıt olmadığı için
select in sonucu boş dönüyor tabi.

1 kayıt girince doğru çalışıyor.

peki 2 kayıt girip denedin mi ne oluyor. select in sonucu olarak 2 kayıt döneceği
için aynı verileri 2 kere insert ediyor.

daha da genellersek, tablo1 de n tane kayıt varsa, bu sorgu sonucu n tane kayıt atar. hemde aynı kayıtları.

o halde bu sorgu cümlesi nasıl olmalı?

select cümlesindeki from tablo1 i kaldıracaksın olacak bitecek.
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
onu çözüyorum, üsdad............. grupla diyorum iş halloluyor

sen heralde direkt SQL den inceliyorsun, ama ben SQL anlamam

sen anlıyorsan öyleyse bana şöyle yardımın dokunur, o dediğin gibi from tablo1 i kaldırdım diyelim. ama ben VBA da docmd.runsql diye çalışıtrılıyor SQL onu biliyorum ama yazılış şematiğini bilmiyorum.

biliyorsan yardımını bekliyorum
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
tabi from tablo1 i kaldırınca bu seferde sorgu en az 1 tablo yada sorgu içermelidir mesajını alıyorum


Bu belkide yeni bir ACCESS bug udur. zaten access in neresinde hata varsa, orası bana lazım olan yer oluyor hep :)) taaaaaaa 97 deki between...... deki hatadan beri böyle gidiyor hep :)
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Pardon ama ben pek anlayamadım yorumunuzu. Orada herhangibir komut ya da başvuru yok ki. Sadece tablonun alan1 alan2 ve alan3 alanlarına form1'de yar alan metin kutularına yazılan verilerin ekleme sorgusuyla yazdırılması isteniyor. Fakat ne gariptir ki access, veri olmayan bir tabloya ekleme yapamıyor. Realperest'in tüm sıkıntısı bu. Ve yanlış yaptığı birşey göremedim. Yani sizin dediğiniz gibi "verileri tablo1 den al" falan demiyor, "tablo1 e yaz" diyor. Doğru mu yorumladım Realperest?

Not:Bu arada betweendeki hatayı da office sp yaması düzeltiyordu:))
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
senin örneğinde uyguladım, bende niye çalışıyor peki?
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
between deki hatayı çözeli çok oldu :)))))) ama beni çok uğraştırmıştı, o yüzden hiç unutmam, tam da yeni başladığım zamandı. bütün yardım dosyalarını okumuştum ve okudukça kendime "APTAL BAK BURDA YAZIYOR, NİYE YAPAMIYORSUN HALA" diyordum. neyseki hata access te çıktı :))

evet dediğimi anlamışsınız, teşekkürler. acaba bu da bi access hatası mı ? elimde olsa üşenmeden gecenin bi yarısı ingilizce versiyonu yükleyecem. çünkü bazı hatalar sadece türkçe sürümler de oluyor.
 

realperest

Altın Üye
Katılım
5 Kasım 2004
Mesajlar
154
Altın Üyelik Bitiş Tarihi
09-05-2025
senin örneğinde uyguladım, bende niye çalışıyor peki?
nasıl uyguladığını anlatırsan, hemen denerim, yani ben sorgu tasarım ekranında SQL göster dedikten sonra from tablo1 i silip tekrar görünümden, sorgu tasarımını seçince o hatayı veriyor.
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
sende versiyon kaç?

dediğin gibi yaptım herhangi bir sorun yok.

gayet güzel formdaki verileri tabloya insert ediyor.

bende 2003 ve son sp yüklü. sp2 miydi valla tam hatırlamıyorum. unuttum.
 
Üst