tablodaki kayıt sayısını bulma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
tablodaki kayıt sayısını bulma
sql kullanmadan tablodaki kayıt sayısını nasıl bulurum
..
Kod: Tümünü seç
table1.recordcount;
Yeri gelmişken bir arıda bulunayım..... Query componentlerinin recordcoun özelliğine güvenmeyin... Table componentine güvenebiliriz tabi ki....
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

ya table.recortcount ile kayıt sayısını alabiliriz. Ya da şeklinde bir SQL cümlesi çalıştırmak sureti ile aynı sonucu elde edebiliriz. Bunun dışında Query.recortcount query'yi kapatıp açsanız bile hatalı sonuç üretebiliyor. Daha doğrusu binlerce kayıt varsa Query componenti bu kayıtların tamamını birden client'a çekmediği için gerçek kayıt sayısını bilmesi de mümkün olamayabiliyor.... O yüzden güvenemeyeceğimiz bir değer üretebiliyor. Benim başıma gelmişti bir query de kayıt sayısı sıfırsa birşeyler yaptırıyordum. Ve hatalı çalışıyordu. Kontrol ettiğimde gordumki aslında kayıt oldugu halde kayıt sayısı için sıfır değerini veriyordu.
Kolay gelsin....
Kod: Tümünü seç
Select count(*) from TABLO
Kolay gelsin....
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

merhabalar
peki fahrettin abi bu query ile yapılan sorgulamalarda geçerlimi. bende sorgulama sonucunda dönen kayıt 0 ise mesaj verdiriyorum veya başka işlemler yaptırıyorum
teşekkürler
kolay gelsin
peki fahrettin abi bu query ile yapılan sorgulamalarda geçerlimi. bende sorgulama sonucunda dönen kayıt 0 ise mesaj verdiriyorum veya başka işlemler yaptırıyorum
teşekkürler
kolay gelsin
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Zaten TQuery ile yapılan sorugalamalardan bahsediyorum.... O kod kesinlikle hataya açık hemen belirteyim.... Benim kod da aynen oyle idi ve farkettim ki bazen kayıt olduğu halde kayıt sayısını sıfır gosterebiliyordu.... Ya ile ayrı bir kontrol yapmalısınız . Ya da kayıt sayısı sıfır mı diye bir kontrol ise onun soyle protik bir yolu daha var.
Bu şekilde bir kontrolde de ancak kayıt sayısı sıfır ise şart gerçekleşecektir....
Bahsettiğiniz kodu bu iki şekilden biri ile değiştirmeniz gerekir.
Kod: Tümünü seç
Select count(*) from TABLO
Kod: Tümünü seç
if Query1.Bof and Query.Eof then
....
Bahsettiğiniz kodu bu iki şekilden biri ile değiştirmeniz gerekir.
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

Query nin Kayıt sayısını sıfır göstermesinin sebebi sorguladığı kayıtları hafızaya almamasından kaynaklanıyor...
Open komutundan sonra :
IbQuery1.FetchAll;
yazarsanız doğru kayıt sayısına ulaşırsınız; Şiddetli yavaşlamayı göze almak kaydıyla tabi ki....
Sevgiler...
Open komutundan sonra :
IbQuery1.FetchAll;
yazarsanız doğru kayıt sayısına ulaşırsınız; Şiddetli yavaşlamayı göze almak kaydıyla tabi ki....
Sevgiler...
Geçip gideriz bizde ağızsız,dilsiz ve sorgusuz
İstanbul gibi düşeriz iki kıtaya birden...
En aşağılık düş, en büyük sevdadan belki
Erkek ölümler; bir uzun iç çekişle büyür göğsümüz
İstanbul gibi düşeriz iki kıtaya birden...
En aşağılık düş, en büyük sevdadan belki
Erkek ölümler; bir uzun iç çekişle büyür göğsümüz
merhabalar,
evet sorgulama sonucunda yani
burada ikinci kullanımımdan dolayı fahrettin abinin dediği üzere hata verme olasılığı var.
teşekkür ederim. buna göre düzenlemeler yapacağım. tabiki öncelikle verdiğiniz yöntemleri kullanılmakta olan sorgu komutlarına uyarlamayı öğrenmeliyim.
kolay gelsin tekrar teşekkürler
evet sorgulama sonucunda yani
Kod: Tümünü seç
.....
ibquery1.open;
ibquery1.last;
sonda
if ibquery1.isempty then showmessage('.....');
şeklinde yapıyorum bazı yerlerde ise
if ibquery1.recordcount=0 then showmessage('......');
şeklinde kullanıyorum
teşekkür ederim. buna göre düzenlemeler yapacağım. tabiki öncelikle verdiğiniz yöntemleri kullanılmakta olan sorgu komutlarına uyarlamayı öğrenmeliyim.
kolay gelsin tekrar teşekkürler
Şefkat-u Merhamette Güneş Gibi Ol.
Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Başkalarının Kusurunu Örtmekte Gece Gibi Ol.
Sehavet-u Cömertlikte Akarsu Gibi Ol.
Hiddet-u Asabiyette Ölü Gibi Ol.
Tevazu-u Mahviyette Toprak Gibi Ol.
Ya Olduğun Gibi Görün Ya Göründüğün Gibi Ol.

Evet hiç kayıt yoksa da EOF=true dur fakat biliyorsun tabloda 10 kayıt varken son kayıtta iken bir daha next dersek yine EOF=True olacaktır....lazio yazdı:kullanılabilirKod: Tümünü seç
if ibquery1.EOF then

* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

Evet o zaman dogru oluyor tabi... Ben de o yüzden bu şekilde bir kullanımı tercih ediyorum....
Kod: Tümünü seç
if Query1.Bof and Query.Eof then
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

Birşey sormak istiyorum
kodunu query olarak çalıştırdım. Daha snra çıkan sonucu nasıl bir labele aktarabilirim? Yani Query1.SQL.Add komutunu kullanarak sorguyu çalıştırdım.. Sonucu nasıl aktarmam gerekiyor?
Kod: Tümünü seç
Select count(*) from TABLO