Definované vazby

PříspěvekNapsal: 23.05.2007 13:18
od jana.krapkova
Jak definovat vazbu mezi dvěma stejnými tabulkami?
Nejprve je třeba si uvědomit, že vazba sama na sebe v sobě ukrývá vazby dvě (jednou záznam
funguje jako hlavička a podruhé jako položka). Pokud tedy chci pokrýt obě strany, musím definovat
vazby dvě.

Podmínky definice jsou následující:
1. Jeden z typů vazby musí být (není)
2. Při psaní podmínky musí být jedna strana reprezentována specifikátorem <HT>
3. Specifikátor <HT> nesmí být použit v definici vazby dvou různých tabulek!
4. Pokud definujete obě strany vazby, nezapomeňte odpovídajícím způsobem upravit podmínku
viz <HT>.NadrizenaOrg=TabCisOrg.CisloOrg x TabCisOrg.NadrizenaOrg=<HT>.CisloOrg

Poznámka: zkratka <HT> je [H]lavní [T]abulka

Definované vazby - podmínka

PříspěvekNapsal: 25.06.2007 15:35
od jan.novotny
Pokud při použití definované vazby v přehledu dostáváte hlášku podobnou této:

[SQL:107,16] The column prefix 'TabXXX' does not match with a table name or alias name used in the query.

může být problém v nedodržení velikosti písmen v názvech tabulek použitých v definované vazbě.
Názvy tabulek i atributů v podmínce je třeba psát s ohledem na velikost písmen v jejich názvech! Pokud tomu tak není, dojde při sestavovaní výsledného SELECTu k tomu, že název tabulky není nahrazen aliasem vazby a SELECT je tedy chybný.