Omezení výběru dat z DB pomocí wizardu   otázka

VB.NET

Zdravím,

snažím se omezit vybrání počtu záznamů. Mám dejme tomu 4 tabulky, připojuji se k Oracle. U první tabulky (taková dejme tomu hlavní) nastavím v selectu WHERE rownum <= 200. Krásně mi vybere pouze prvních záznamů, ALE pokud následně naplňuji další tabulky ve vazbě 1:N k této první omezené tabulce, proč operace netrvá řádově menší čas, když by se měly vybrat pouze data k těmto 200 záznamům?

Spíše mi to připadá, že daná podmínky, kdy se rovnají klíče vybere vše z DB a nikoliv omezení přes vybranné záznamy.

Zkoušel jsem proto následující:

- u "children" tabulek zavést parametry pro metodu FILL,

- tyto parametry dostat samozřejmě do SQL příkazu SELECT,

- volal tuto metodu vždy po změně dat v hlavní tabulce.

Jenže vše je to neskutečně pomalé. Ovládání mám napojeno na BindingNavigator a musím odchytávat každou událost.

Prostě věřím, že to nejde principielně snadněji a nějak nemohu uvěřit tomu, že ten počet záznamů nejde omezit pouze pro množinu dat omezenou hlavní tabulkou.

Ještě bych snad uvedl, že to dělám přes wizard ve VS 2008 (přímo programově bych to zřejmě dělal principielně jinak, ale o to mi teď nejde).

Nemá někdo IDEU??

Díky moc za jakýkoliv postřeh

A. M.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback