Zp∞tnß kompatibilita verze 5.1

1. Zp°φsn∞nφ syntaxe SELECT

V klauzuli ORDER BY se sm∞jφ (v souladu s normou) nynφ pou₧φvat pouze jmΘna sloupc∙ z odpov∞di na dotaz, tedy to, co je uvedeno za SELECT. Nap°φklad v dotazu zaΦφnajφcφm:

    SELECT a, b+c, SUM(d), e+f AS eplusf, SUM(g) AS sumag ...

lze za ORDER BY uvΘst: a, EXPR1, SUM1, eplusf, sumag, ale nikoli b, c, e, f nebo jinΘ sloupce. Toto nov∞ zavedenΘ omezenφ se m∙₧e projevit p°i p°enosu aplikace z ni₧Üφch verzφ v p°φpad∞ pln∞nφ slo₧ek typu combo v pohledech. Dotazy plnφcφ combo sm∞ly mφt pouze jeden (editovatelnΘ combo) nebo dva (p°eklßdanΘ combo) sloupce a t°φdilo se Φasto podle sloupce jinΘho. Pohled s takov²mto combem nep∙jde ve verzi 5.1 otev°φt. Proto byl klient upraven tak, aby v dotazu plnφcφm combo mohlo b²t libovolnΘ mno₧stvφ sloupc∙, tedy i ten, podle n∞ho₧ se t°φdφ. Jako sloupce v²znamnΘ pro obsah comba pak slou₧φ prvnφ (resp. prvnφ a druh²) sloupec dotazu.

2. Sub°et∞zce v SELECTu

Ve v²razech pou₧it²ch v p°φkazu SELECT nejde ji₧ pou₧φt zßpis nap°. psc[1] pro zφskßnφ prvnφho znaku °et∞zce (°et∞zec se chßpal jako jednorozm∞rnΘ pole znak∙). Podle normy je nutnΘ pou₧φt SQL funkce SUBSTRING.

P°φklad: podle prvnφho znaku sloupce PS╚ zjist∞te poΦty zßznam∙ v jednotliv²ch krajφch:

    SELECT SUBSTRING(psc FROM 1 FOR 1), COUNT(jmeno)
    FROM  Adresy
    GROUP BY SUBSTRING(psc FROM 1 FOR 1)

3. OUTER JOIN

P°i zßpisu podmφnek pro OUTER JOIN doÜlo ke zp°φsn∞nφ syntaktick²ch pravidel v souladu s normou SQL. Propojovacφ podmφnka joinu dvou tabulek smφ obsahovat pouze jmΘna sloupc∙ t∞chto tabulek.

Nech¥ nap°φklad tabulka TabA obsahuje sloupec A1, TabB sloupec B1 a TabC sloupce C1 a C2. Pak nelze psßt:

    SELECT * 
    FROM TabA, TabB LEFT OUTER JOIN TabC ON (B1=C1 AND A1=C2)

nebo¥ v propojovacφ podmφnce mezi TabB a TabC nem∙₧e b²t sloupec z TabA, ale je nutno psßt:

    SELECT * 
    FROM TabA, TabB LEFT OUTER JOIN TabC ON (B1=C1) 
    WHERE A1=C2

4. Kombinovßnφ provozu serveru 5.0 a 5.1 nad stejn²mi daty

Databßzov² soubor vytvo°enφ serverem 5.0 lze pou₧φvat serverem 5.1 bez omezenφ. Ob∞ verze serveru mohou na n∞m pracovat i st°φdav∞ (i kdy₧ to nedoporuΦujeme).

Pokud pomocφ serveru 5.1 vytvo°φte v databßzi tabulky kterΘ vyu₧φvajφ nov²ch rys∙ verze 5.1 (nap°φklad volßnφ nov²ch funkcφ v integritnφch omezenφch), pak tyto tabulky nebude mo₧no pou₧φvat p°i provozu serveru 5.0 nad stejnou databßzφ. Kontrola integrity databßze navφc ukß₧e tyto tabulky jako "zniΦenΘ".

Pokud pomocφ serveru 5.1 vytvo°φte nov² databßzov² soubor, pak na n∞j nepou₧φvejte server 5.0. Databßzov² server 5.1 mß toti₧ zesφlenß pravidla vnit°nφ integrity databßzovΘho souboru, kterß server verze 5.0 poruÜuje.

5. Zp∞tnß kompatibilita SQL

Server 5.1 m∙₧e pracovat ve dvou re₧imech - nov² re₧im vyhovujφcφ norm∞ SQL2 nebo v drobnostech odliÜn² re₧im kompatibilnφ s verzφ SQL ve WinBase 5.0. Podrobnosti o t∞chto re₧imech a jejich nastavenφ viz Kompatibilita SQL. Tato kompatibilita se net²kß bod∙ vyjmenovan²ch v tΘto strßnce nßpov∞dy!