Autor Téma: TFDQuery.FetchAll - dá sa to niekde nastaviť ako default?  (Přečteno 3464 krát)

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4983
  • Karma: 41
    • Verze Delphi: W10 + Delphi 10.4 professional
V transakcii som to nenašiel. No neviem aké parametre sa tam dajú nasekať.
TFDQuery to má ako metódu.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4983
  • Karma: 41
    • Verze Delphi: W10 + Delphi 10.4 professional
Re:TFDQuery.FetchAll - dá sa to niekde nastaviť ako default?
« Odpověď #1 kdy: 07-11-2017, 14:12:12 »
Ďakujem.
Práve som to našiel, vylúštil. Ale ako čítam Tvoj príspevok, tak som to pekne poplietol.
Dúfam, že to platí aj pre Refresh.
« Poslední změna: 07-11-2017, 14:14:11 od Stanislav Hruška »
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4983
  • Karma: 41
    • Verze Delphi: W10 + Delphi 10.4 professional
Re:TFDQuery.FetchAll - dá sa to niekde nastaviť ako default?
« Odpověď #2 kdy: 07-11-2017, 20:07:25 »
Ako to tak po troške čítam, tak zisťujem, že to je poriadne zamotané. A nemožné si zapamätať ako sa to správa pri rôznych kombináciách vlastností.
Ale hlavne mám skúsenosť ktorá hovorí: čítaj pozorne všetko až do posledného slova!
Vďaka za vysvetlenie.

Poznámka: nikde nevidím, žeby sa na stránke o FireDAC dalo vyhľadávať. A keď to človek nepozná, tak mu index nijako nepomôže. Napr. pod R nie Refresh, lebo to je niekde v triede v ktorej to je definované. Ale v ktorej to je to nemám ešte ako vedieť. Dostať do hlavy celú štruktúru FireDAC je pre mňa nemožné :'(
Ten príklad neberte doslova. Viem, že Refresh ma hodí do Data.DB.TDataSet.Refresh
« Poslední změna: 07-11-2017, 20:11:29 od Stanislav Hruška »
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4983
  • Karma: 41
    • Verze Delphi: W10 + Delphi 10.4 professional
Re:TFDQuery.FetchAll - dá sa to niekde nastaviť ako default?
« Odpověď #3 kdy: 07-11-2017, 22:19:24 »
Citace
Proc chces vlastne prenaset vsechny zaznamy? Kvuli lepsimu vykonu?
Dôvodov je viac. Jeden z nich môže byť aj výkon, ako som sa dočítal.
Všade kde mám použitý SELECT pracujem s celou sadou záznamov. Tých záznamov budem mať rádovo v stovkách. Takže objem dát nie je problémom. V drvivej väčšine prípadov mám while not qry.eof do. Čo znamená, že ich aj tak natiahnem všetky.
Teraz mám len doslovne pár záznamov a tak netuším ako dlho sa budú vykonávať jednotlivé operácie. A či by som pocítil rozdiel.
Niekde prechádzam dataset od konca. Neviem či by mu vadilo ak by nebol natiahnutý celý.
Inde si to vyžaduje spôsob práce s datasetom - ťahanie údajov do výpočtov.
Hlavne si v niektorých prípadoch nie som istý ako to funguje. Tak si vytváram poistku.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4983
  • Karma: 41
    • Verze Delphi: W10 + Delphi 10.4 professional
Re:TFDQuery.FetchAll - dá sa to niekde nastaviť ako default?
« Odpověď #4 kdy: 08-11-2017, 08:39:24 »
Citace
pokud ti jde o vykon, zkus otestovat zda dosahnes vyssiho vykonu navysovanim
Držím sa zásady ktorú mi tu niekoľkokrát obili  o hlavu. Najprv nech ti to všetko správne funguje. Až potom sa venuj optimalizácii. A mne to ešte nefunguje ako má + nemám všetko otestované (lebo ma to už nebaví :) ).  Až k tomu dôjde, tak si najprv budem musieť vygenerovať dostatočný počet záznamov. Už len to generovanie bude zábava.
W10 64b, Delphi 10.4, FireBird 3.05
Expert na kladenie nejasne formulovaných otázok.