Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
O tablo yapısı ile istedğini yapman çok zor, yani epey ugraşman gerekiyor.
Genelde bu tür programlarda yapıyı tasarlarken tarihe göre sıralama yapabilecek şekilde tablo yapısını kurarsın. Tablolarında tarih bilgisi ay ve yıl olarak tutuluyor. Ay kısmını integer tutsan belki sorun basit olurdu, ama yazı olunca işin içinden çıkmak zor oluyor. Çünkü aya göre sırala deyince, senin tablonda söyle bir sıralama olacak AGUSTOS, ARALIK, EKIM, EYLUL, HAZIRAN vs gibi ilgisiz bir liste çıkacak. Bu şekilde devam edeceksen özel bir ay tablosu oluşturup, orada ayların sırasını integer olarak tutarak, bu tabloya join etmen lazım.
Ay tablosu :
id - Adi
1 Ocak
2 Şubat
3 Mart gibi
Böylesi ek tabloyla, sıralama yapabilirsin. Daha basiti ise ay ve yıl kısmını atıp, dogrudan datetime kullanabilirsin. Bu sıralamayı basitleştirip, işlemleri kolaylaştırır.
select kim, sum(borc- odeme) from hesap where tarih < '01/05/2009' komutunu verip, tek sql satırda belirtilen tarih öncesi kalan borcu görebilirsin. Bunu yapamıyorsun çünkü tablo yapın bu işlere uygun degil.
Gelelim diğer konuya, ben sana vazgeç demiyorum, bu şekilde körleme gidecegine, 2-3 gün sql ile ilgili kitap oku, tablolar nasıl tasarlanır, normalizasyon nedir bunları kavra. Yoksa buradan birisinin sana vereceği kodla sadece günü kurtarırsın. Ama programı sen yazmış olmazsın, yeni bir ekleme gerekirse, yine bir yerlerden kod bulmak zorunda kalırsın. Olayın özünü kavraman için çok okumalı ve deneme yapmalısın.
Genelde bu tür programlarda yapıyı tasarlarken tarihe göre sıralama yapabilecek şekilde tablo yapısını kurarsın. Tablolarında tarih bilgisi ay ve yıl olarak tutuluyor. Ay kısmını integer tutsan belki sorun basit olurdu, ama yazı olunca işin içinden çıkmak zor oluyor. Çünkü aya göre sırala deyince, senin tablonda söyle bir sıralama olacak AGUSTOS, ARALIK, EKIM, EYLUL, HAZIRAN vs gibi ilgisiz bir liste çıkacak. Bu şekilde devam edeceksen özel bir ay tablosu oluşturup, orada ayların sırasını integer olarak tutarak, bu tabloya join etmen lazım.
Ay tablosu :
id - Adi
1 Ocak
2 Şubat
3 Mart gibi
Böylesi ek tabloyla, sıralama yapabilirsin. Daha basiti ise ay ve yıl kısmını atıp, dogrudan datetime kullanabilirsin. Bu sıralamayı basitleştirip, işlemleri kolaylaştırır.
select kim, sum(borc- odeme) from hesap where tarih < '01/05/2009' komutunu verip, tek sql satırda belirtilen tarih öncesi kalan borcu görebilirsin. Bunu yapamıyorsun çünkü tablo yapın bu işlere uygun degil.
Gelelim diğer konuya, ben sana vazgeç demiyorum, bu şekilde körleme gidecegine, 2-3 gün sql ile ilgili kitap oku, tablolar nasıl tasarlanır, normalizasyon nedir bunları kavra. Yoksa buradan birisinin sana vereceği kodla sadece günü kurtarırsın. Ama programı sen yazmış olmazsın, yeni bir ekleme gerekirse, yine bir yerlerden kod bulmak zorunda kalırsın. Olayın özünü kavraman için çok okumalı ve deneme yapmalısın.
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
yok yine anlamamışsınız artık son çare olarak video çekip yollayacağım sen bu sıralamanda belki haklısın ancak bana bu ayların ocaktan şubata kadar sıralanması lazım değilki banasenin tablonda söyle bir sıralama olacak AGUSTOS, ARALIK, EKIM, EYLUL, HAZIRAN vs gibi ilgisiz bir liste çıkacak.
ah ah ne kadar zor bi meseleymiş dert anlatmak yaaaa hiç okumuyorsunuz yazdıklarımı ha
ben dedimki son mesajın sonunda gurub ladığım zaman 36 üyem olduğu için 36 satır kayıt geliyor hepsinin ayı yılı aidat ı vs. ilk 1....36 ya eşit oluyor bu ilk 1....36 nın ayını ekim yap ekime eşit oluyor
eğer guruplamasam hesap yapılmıyor herkesin hesabı birbirine karışıyor
Burayı okumadan geçmeyin diğer yerler ek bilgi olsun diye yazdım...Select UYE.ADI,UYE.BLOK,HESAP.AIDAT, HESAP.AODEME,HESAP.YAKIT,HESAP.YODEME, HESAP.AY, HESAP.YIL, HESAP.NOTC, HESAP.ID, sum(HESAP.AIDAT),'+'sum(HESAP.AODEME), sum(hesap.aidat-hesap.aodeme) as aidatk, sum(HESAP.YAKIT), sum(HESAP.YODEME), sum(hesap.yakit-hesap.yodeme) as yakitk , CASE WHEN YIL='''+COMBOBOX1.text+''' AND AY='''+COMBOBOX2.text+''' then '+'sum(hesap.aidat-hesap.aodeme) else 0 End AS aidatiko From UYE, HESAP Where UYE.ID=HESAP.KIM group by hesap.kim
bu kodu çalıştırdığımda guruplama sonunda grup by hesap.kim olunca tüm aynı kim noya sahip üyeler birleşiyor 1....36 ya kadar bir liste çıkıyor bu listenin hesap kısmı tam istediğim gibi oluyor tüm ay ve yılları kapsayan bir sonuç çıkıyor fakat seçilen aya gidilemiyor nedeni çok basit çünkü birleştirme sonucu ay sutunu değerleri aşşağıdaki hesap tablosundaki ilk 1.....36 nın ay değerlerini alıyor yani tek bir ay oluyor ve başka bir ay bulunamıyor aidat ta ilk 1...36 nın aidatı oluyor diğerleride ilk 1...36 ya eşitleniyor bugüne kadar verilen kodlarla bunuda hallettim istediğim ayın aidatını görüyom fakat buseferde hesaplar sadece o ay için yapılmış oluyor
uye tablosu
id
1
.
.
.
36 ya kadar
hesap tablosu
kim
1
.
.
.
36
.
.
.
1
.
.
.
36
.
.
.
1
.
.
.
36 böyle devam ediyor
Yukarıda resimdeki borç sutunu değerlerini uye tablosunda oluşturduğum sutuna veya kodlarla oluşturulacak sutuna satırı satırına kaydetme şansım varmı böle bişey varsa çok basit şekilde çözülecek bu sorun
veya
sum(hesap.aidat-hesap.aodeme) as aidatk from uye,hesap Where UYE.ID=HESAP.KIM group by hesap.kim) as borc,( SELECT sum(hesap.yakit-hesap.yodeme) as yakitk from uye,hesap Where UYE.ID=HESAP.KIM group by hesap.kim) as borc2 From UYE, HESAP Where UYE.ID=HESAP.KIM and YIL='2009' AND AY='EYLÜL' group by hesap.kim
buna benzer sorgu ile ben yapamadım belki fikir verir
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Okudum, ama ne yapmak istediğini hala anlamış degilim. O sql sorgunun sonuç vermiş olmasını bile şaşırtıcı geliyor, normal bir sql programının o şekildeki grouplama da hata vermesi gerekir.
Bir aya ait borcu ögreneceksen, geçmiş ayların toplamını da gözönünde tutmalısın. Yani mayıs ayındaki borcu ögrenirken, nisandaki, marttaki eksik ödemeler de hesaplanmalıdır. Yok ben sadece ay üzerinden hesap yapacagım, diğer ayları hesaba karıştırmayacagım diyorsan, o zaman grouplandırmaya yılı ve ayı da katmalısın.
select kim,ay,yil, sum(borc-odeme) from hesap group by kim,ay,yil
Yukarıdaki sql sorgusu aylar bazında hesap yapacaktır. Diğer aylardaki hesabı gözönüne almaz.
Eğer bu şekildeki bir hesap işini görecekse, diger alanları da sql e ekleyeyip, listeni oluşturabilirsin.
Bir ihtimal soruyu da sorunu da anlamamış olabilirim. Yaptığın işlem bana çok karışık geliyor.
Bir aya ait borcu ögreneceksen, geçmiş ayların toplamını da gözönünde tutmalısın. Yani mayıs ayındaki borcu ögrenirken, nisandaki, marttaki eksik ödemeler de hesaplanmalıdır. Yok ben sadece ay üzerinden hesap yapacagım, diğer ayları hesaba karıştırmayacagım diyorsan, o zaman grouplandırmaya yılı ve ayı da katmalısın.
select kim,ay,yil, sum(borc-odeme) from hesap group by kim,ay,yil
Yukarıdaki sql sorgusu aylar bazında hesap yapacaktır. Diğer aylardaki hesabı gözönüne almaz.
Eğer bu şekildeki bir hesap işini görecekse, diger alanları da sql e ekleyeyip, listeni oluşturabilirsin.
Bir ihtimal soruyu da sorunu da anlamamış olabilirim. Yaptığın işlem bana çok karışık geliyor.
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Aslında aynı şeyi konuşuyoz tamam işte bende mayıs ayındaki borcu ögrenirken, nisandaki, marttaki eksik ödemeler de hesaplansın istiyom ancakBir aya ait borcu ögreneceksen, geçmiş ayların toplamını da gözönünde tutmalısın. Yani mayıs ayındaki borcu ögrenirken, nisandaki, marttaki eksik ödemeler de hesaplanmalıdır. Yok ben sadece ay üzerinden hesap yapacagım, diğer ayları hesaba karıştırmayacagım diyorsan, o zaman grouplandırmaya yılı ve ayı da katmalısın.
mayıs ayındaki borcu öğrenmek için aylardan mayısı vs. seçtiğimde açılmıyor(illaki ilk kayıtta hangi ay varsa onu seçince listeleniyor) yada dediğiniz gibi sadece mayıs ayı kalanını veriyor.
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
45 mesaja kadar ulaşmış, sorun da demek ki anlaşılamayan&anlatılamayan bir şey var.
Bence Sen excel dosyasına tabloları yaz.
bir sayfasına da görmek istediğin görüntüyü yaz. Ona göre bizde SQL i oluşturalım bitsin bu problem artık:D
Bence Sen excel dosyasına tabloları yaz.
bir sayfasına da görmek istediğin görüntüyü yaz. Ona göre bizde SQL i oluşturalım bitsin bu problem artık:D
Bir kelimenin anlamını öğretsen bile yeter..



Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
aynısını buraya yazdım anlaşılmadı en iyisi ben video dersler gibi videoda anlatayım link vereyim ordan izleyin
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Bu tablo yapısı değişmedikçe eski aylardaki ödemeyi hesaplattırman çok zor, çünkü aylara göre sıralama yapamazsın. Ayları integer veya ödeme tarihlerini date olarak tutmalısın. Yol yakınken tablo yapını degiştirmeni öneririm. Bu tablo yapısıyla çok yol alamazsın.
Stok, ambar, ticari gibi programları yazarken, ilk başlanılması gereken yer raporlardır. Raporların ne olacağı girilmesi gerekenleri belirler. Şu rapor için şu alanlara ihtiyaç var diyerek, tabloları oluşturur ve optimize edersin. Daha sonra temel kayıtların ve hareketlerin yapılacağı tabloları oluşturursun. Raporlar için elden geldiğince sql kullanman gerekir, sql sunucuda çalışacagı için programın verimini artıracaktır.
Tabii tüm bu işleri yapabilmek için temel sql bilgilerinin de olması gerekir. Sql de sorgulama nasıl yapılır, tablolar nasıl bağlanır, gruplandırma vs gibi temel konulara azçok hakim olmalısın.
İngilizcen varsa, sql konusunda genel bilgiler veren aşagıdaki siteye bir gözat, olmadı türkçe siteleri google ile ara.
http://www.w3schools.com/sql/default.asp
Stok, ambar, ticari gibi programları yazarken, ilk başlanılması gereken yer raporlardır. Raporların ne olacağı girilmesi gerekenleri belirler. Şu rapor için şu alanlara ihtiyaç var diyerek, tabloları oluşturur ve optimize edersin. Daha sonra temel kayıtların ve hareketlerin yapılacağı tabloları oluşturursun. Raporlar için elden geldiğince sql kullanman gerekir, sql sunucuda çalışacagı için programın verimini artıracaktır.
Tabii tüm bu işleri yapabilmek için temel sql bilgilerinin de olması gerekir. Sql de sorgulama nasıl yapılır, tablolar nasıl bağlanır, gruplandırma vs gibi temel konulara azçok hakim olmalısın.
İngilizcen varsa, sql konusunda genel bilgiler veren aşagıdaki siteye bir gözat, olmadı türkçe siteleri google ile ara.
http://www.w3schools.com/sql/default.asp
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
arkadaşlar biraz ufak oldu ama yinede anlaşılıyor 4mb lık bir swf dosyası izleyin busefer anlaşılacağımı ümit ediyom zaten seslede anlattım
oradaki kullanılan koduda vereyim
http://www.ebaumsworld.com/flash/play/80658175/
oradaki kullanılan koduda vereyim
swf izleme linkiSelect UYE.ADI,UYE.BLOK,HESAP.AIDAT, HESAP.AODEME,HESAP.YAKIT,HESAP.YODEME, HESAP.AY, HESAP.YIL, HESAP.NOTC, HESAP.ID, sum(HESAP.AIDAT),'+'sum(HESAP.AODEME), sum(hesap.aidat-hesap.aodeme) as aidatk, sum(HESAP.YAKIT), sum(HESAP.YODEME), sum(hesap.yakit-hesap.yodeme) as yakitk , CASE WHEN YIL='''+COMBOBOX1.text+''' AND AY='''+COMBOBOX2.text+''' then '+'sum(hesap.aidat-hesap.aodeme) else 0 End AS aidatiko From UYE, HESAP Where UYE.ID=HESAP.KIM group by hesap.kim
http://www.ebaumsworld.com/flash/play/80658175/
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Sorudan anladığım kısaca, seçilen ayın aidatı tutarı gelmeli ama geçmiş tüm dönem kayıtlarından aidat borçlarınının toplamını bulmak galiba
. Bu işlem için bir tarih alanı şart. Ay adı alanı ile tarihsel olarak kıyaslama yapmak pek mümkün değildir. Bunun HESAP tablosunda Tarih alanın olduğunu varsayarsak aşağıdaki gibi bir sorgu geçmişten gelen değerlere göre toplamları hesaplayacaktır. Bu örnek sorgu ŞUBAT-2009 seçildiği zaman yazılacak sorgudur.

Kod: Tümünü seç
select UYE.*, HESAPLANAN.* from UYE
left join
(select KIM,
coalesce(avg(case when AY='ŞUBAT' then AIDAT end),0) as AIDAT,
sum(coalesce(AIDAT,0)-coalesce(AODEME,0)) as AIDAT_BORCU,
coalesce(avg(case when AY='ŞUBAT' then YAKIT end),0) as YAKIT,
sum(coalesce(YAKIT,0)-coalesce(YODEME,0)) as YAKIT_BORCU
from HESAP where Tarih<'01.03.2009' group by KIM) as HESAPLANAN
on UYE.ID=HESAP.KIM
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
selamlar vidyoyu izlediğinizi zannetmiyorum ordan bunu anladığınıza inanmak dahi istemiyorum kolay gelsin
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
ben izledim ama Speakerım yok. 

Bir kelimenin anlamını öğretsen bile yeter..



Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Heralde senin sadece klavye çalışıyo abim aman ha fazla biiş yazıp onuda kaybetme lazım olacakconari yazdı:ben izledim ama Speakerım yok.


Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Bilgisayarda çalışmam için Speakera gerek yok ama Klavyesiz yapamam.Bu arada monitörde var yazdıklarını okuyabiliyorum.pelitt yazdı:Heralde senin sadece klavye çalışıyo abim aman ha fazla biiş yazıp onuda kaybetme lazım olacakconari yazdı:ben izledim ama Speakerım yok.geçen günde ben resimleri göremiyom demiştin

Resimleri göremiyorum çünkü yüklediğin site, proxy sunucumuz tarafından yasaklanmış durumda

Flashı izledim ama sesini merak etmedim.tabloyu açmışsın birşeyler anlatıyorsun. Bide Quick raporu gösteriyorsun Ben sana ne nededim



Bir kelimenin anlamını öğretsen bile yeter..



Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Ben videoyu izledim, sesleri de dinledim.
Anlatım veya anlamakla ilgili bir sorun olduğu kesin, kim de ne sorun var bir kenarı bırakıp, arkadaşın derdini anladığım kadarıyla anlatayım.
Bir liste hazırlamak istiyor. Bu listede aylara göre üyelerin borçlarını dökecek, bir tane alanda da birikmiş borçlarını gösterecek.
Örnegin kasım ayı için 50 tl aidat ödemesi gerekiyor, toplam borcu da 200 tl. Bu 200 tl, haziran, aralık veya başka yıllardan da gelebilir, kasım öncesinin borcu olmasına gerek yok.
Aslında işini yapacak kod yukarıda verildi, ama hala ne cevabı aradığını anlamış değilim. Orada yazan where e de ihtiyacı yok. Sadece toplam borcu yazsın yeter diyor.
@Saban
Anlatım veya anlamakla ilgili bir sorun olduğu kesin, kim de ne sorun var bir kenarı bırakıp, arkadaşın derdini anladığım kadarıyla anlatayım.
Bir liste hazırlamak istiyor. Bu listede aylara göre üyelerin borçlarını dökecek, bir tane alanda da birikmiş borçlarını gösterecek.
Örnegin kasım ayı için 50 tl aidat ödemesi gerekiyor, toplam borcu da 200 tl. Bu 200 tl, haziran, aralık veya başka yıllardan da gelebilir, kasım öncesinin borcu olmasına gerek yok.
Aslında işini yapacak kod yukarıda verildi, ama hala ne cevabı aradığını anlamış değilim. Orada yazan where e de ihtiyacı yok. Sadece toplam borcu yazsın yeter diyor.
@Saban
sabanakman yazdı:Sorudan anladığım kısaca, seçilen ayın aidatı tutarı gelmeli ama geçmiş tüm dönem kayıtlarından aidat borçlarınının toplamını bulmak galiba. Bu işlem için bir tarih alanı şart. Ay adı alanı ile tarihsel olarak kıyaslama yapmak pek mümkün değildir. Bunun HESAP tablosunda Tarih alanın olduğunu varsayarsak aşağıdaki gibi bir sorgu geçmişten gelen değerlere göre toplamları hesaplayacaktır. Bu örnek sorgu ŞUBAT-2009 seçildiği zaman yazılacak sorgudur.
Kod: Tümünü seç
select UYE.*, HESAPLANAN.* from UYE left join (select KIM, coalesce(avg(case when AY='ŞUBAT' then AIDAT end),0) as AIDAT, sum(coalesce(AIDAT,0)-coalesce(AODEME,0)) as AIDAT_BORCU, coalesce(avg(case when AY='ŞUBAT' then YAKIT end),0) as YAKIT, sum(coalesce(YAKIT,0)-coalesce(YODEME,0)) as YAKIT_BORCU from HESAP where Tarih<'01.03.2009' group by KIM) as HESAPLANAN on UYE.ID=HESAP.KIM
Re: Navicat te çalışıyor fakat zqueryde tablo bulunamadı ?
Kod: Tümünü seç
select UYE.*, HESAP.* from UYE left join (select KIM, coalesce(avg(case when AY='''+COMBOBOX2.text+''' and yil='''+COMBOBOX1.text+''' then AIDAT end),0) as AIDAT, sum(coalesce(AIDAT,0)-coalesce(AODEME,0))'+' as AIDAT_BORCU, coalesce(avg(case when AY='''+COMBOBOX2.text+''' and yil='''+COMBOBOX1.text+''' then YAKIT end),0) as YAKIT, sum(coalesce(YAKIT,0)-coalesce(YODEME,0))'+' as YAKIT_BORCU from HESAP group by KIM) as HESAP on UYE.ID=HESAP.KIM
tam istediğim şekilde çalışıyor
kod tam aradığım kod arkadaşlar nekadar teşekkür edeceğimi bilemiyorum hepiniz sağolun varolun konuyu kapatırız artık reklama girecek ama
