Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Aşırı Field Kullanımı hk.
#1
Zamanında birileri Firebird'de FALAN adında bir tablo tasarlamış. Bu tabloda da sadece 1 satır bilgi var. Parametre niyetine tasarlamışlar, zamanla bu fieldlerin sayısı eklene eklene 537'yi bulmuş...

(Evet, farkındayım, Database Normalizastion Kuralları hak getire, Eyvallah, O kadar field bir tabloda olmaz, eyvallah, ben olsam böyle yapmazdım ona da eyvallah... O nedenle tartışmanın o kısmına hiç girmeyelim... Olmuş bir kere, gençler yapmış bişeler...)

Şimdi, bu tablodan TClientDataSet ile "SELECT FIRST 1 * FROM FALAN" diye bir sorgu çalıştırıldığında 410'uncu field'den sonrası TClientDataSet'e yüklenmiyor.

Sorular şunlar;

* Delphi'nin FieldList'teki Field sayısı ile ilgili bir sınırlaması var mı? Yoksa bu bir BUG mu?
* Böyle bir durumla karşılaşan oldu mu?
* Olduysa nasıl çözdünüz?
P.Safa:Yaşlanarak değil, yaşayarak tecrübe kazanılır.Zaman insanları değil,armutları olgunlaştırır
C.Yücel:Toprak gibi olmalısın! Ezildikçe sertleşmelisin!Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı
S.Canan:Bildiğini zannettiğin an hiç bir şey öğrenemezsin
Bilgi uçar
WWW
Cevapla
#2
merakımdan soruyorum
select
alan1,
alan2,
alann from tablo seklinde denediniz mi?

“Do. Or do not. There is no try.”
Cevapla
#3
(13-02-2020, Saat: 16:42)uparlayan Adlı Kullanıcıdan Alıntı: Zamanında birileri Firebird'de FALAN adında bir tablo tasarlamış. Bu tabloda da sadece 1 satır bilgi var. Parametre niyetine tasarlamışlar, zamanla bu fieldlerin sayısı eklene eklene 537'yi bulmuş...

(Evet, farkındayım, Database Normalizastion Kuralları hak getire, Eyvallah, O kadar field bir tabloda olmaz, eyvallah, ben olsam böyle yapmazdım ona da eyvallah... O nedenle tartışmanın o kısmına hiç girmeyelim... Olmuş bir kere, gençler yapmış bişeler...)

Şimdi, bu tablodan TClientDataSet ile "SELECT FIRST 1 * FROM FALAN" diye bir sorgu çalıştırıldığında 410'uncu field'den sonrası TClientDataSet'e yüklenmiyor.

Sorular şunlar;

* Delphi'nin FieldList'teki Field sayısı ile ilgili bir sınırlaması var mı? Yoksa bu bir BUG mu?
* Böyle bir durumla karşılaşan oldu mu?
* Olduysa nasıl çözdünüz?

Merhaba,

Alan limiti konusunu hiç araştırmadım fakat aklıma yakın zamanlarda burada FDMemtable ile yaşadığım soruna (bug) benzer bir çözümle deneyebilirsiniz. (Başka bir componenet deneyerek bug veya limit olup olmadığını anlamaya yardımcı olabilir.)

İyi çalışmalar.
Cevapla
#4
(13-02-2020, Saat: 16:47)masteryoda Adlı Kullanıcıdan Alıntı: merakımdan soruyorum
select
alan1,
alan2,
alann from tablo seklinde denediniz mi?

Evet, denedim. 410 field'den sonrasını TClientDataSet yokmuş gibi davranıyor.
P.Safa:Yaşlanarak değil, yaşayarak tecrübe kazanılır.Zaman insanları değil,armutları olgunlaştırır
C.Yücel:Toprak gibi olmalısın! Ezildikçe sertleşmelisin!Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı
S.Canan:Bildiğini zannettiğin an hiç bir şey öğrenemezsin
Bilgi uçar
WWW
Cevapla
#5
@uparlayan  hocam ben MSSQL üzerinde 1024 adet Integer türünde (SQLin desteklediği max sınırı) alan açıp test ettim ClientDataset verileri alıp gösteriyor
Sanırım sorun Firebird ile alakalı olabilir.
Test ettiğim ortam "RAD Studio 10.3 Version 26.0.36039.7899"
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#6
Firebird tek tabloda kapladığı alan olarak 64k destekler diye biliyorum, yani integer 4 byte olarak 16k küsür alan sayısını destekliyordu sanırım.
WWW
Cevapla
#7
(13-02-2020, Saat: 17:45)adelphiforumz Adlı Kullanıcıdan Alıntı: @uparlayan  hocam ben MSSQL üzerinde 1024 adet Integer türünde (SQLin desteklediği max sınırı) alan açıp test ettim ClientDataset verileri alıp gösteriyor
Sanırım sorun Firebird ile alakalı olabilir.
Test ettiğim ortam "RAD Studio 10.3 Version 26.0.36039.7899"

Biz bağlantıyı MİDAS ile yapıyoruz bu noktada bir sıkıntı olabilir mi acaba?
P.Safa:Yaşlanarak değil, yaşayarak tecrübe kazanılır.Zaman insanları değil,armutları olgunlaştırır
C.Yücel:Toprak gibi olmalısın! Ezildikçe sertleşmelisin!Seni ezenler sana muhtaç kalmalı! Hayatı sende bulmalı
S.Canan:Bildiğini zannettiğin an hiç bir şey öğrenemezsin
Bilgi uçar
WWW
Cevapla
#8
(13-02-2020, Saat: 18:14)uparlayan Adlı Kullanıcıdan Alıntı:
(13-02-2020, Saat: 17:45)adelphiforumz Adlı Kullanıcıdan Alıntı: @uparlayan  hocam ben MSSQL üzerinde 1024 adet Integer türünde (SQLin desteklediği max sınırı) alan açıp test ettim ClientDataset verileri alıp gösteriyor
Sanırım sorun Firebird ile alakalı olabilir.
Test ettiğim ortam "RAD Studio 10.3 Version 26.0.36039.7899"

Biz bağlantıyı MİDAS ile yapıyoruz bu noktada bir sıkıntı olabilir mi acaba?

Hocam MIDAS ile hiç uğraşmadım. Nasıl çalışır nasıl işlem yapılır bir bilgim yok bu konuda. Kusura bakmayın
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#9
ClieantDataSet mecburi değil ise muadili (FDMemTable, VirtualTable, kbmMemTable v.s. gibi) başka bileşenleri deneyin, belki işinizi görür.
Cevapla
#10
sadece ilgilendiğiniz alanları FDQuery ile çekip ClientDataset'e clone etmenizi öneririm
FDQuery'nin alan sayısını sorun edeceği görülmemiştir
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Left Outer kullanimi 41linea41 2 296 24-12-2019, Saat: 07:42
Son Yorum: 41linea41
  Blob field buyuklugu 41linea41 13 1.659 30-05-2019, Saat: 10:27
Son Yorum: 41linea41
  Generator kullanımı Lord_Ares 6 1.525 05-10-2018, Saat: 08:51
Son Yorum: esistem
  FireBird Merge Into Kullanımı mcuyan 2 855 13-08-2018, Saat: 12:40
Son Yorum: mcuyan
  Firebird'de bellek Kullanımı rmzgenius 1 861 25-06-2018, Saat: 15:34
Son Yorum: klavye



Konuyu Okuyanlar: 1 Ziyaretçi