Parametry
mask | souΦet hodnot voleb, kterΘ se majφ ovlivnit (nastavit nebo zruÜit nastavenφ) |
value | souΦet hodnot voleb, kterΘ se majφ nastavit |
[cdp | kontextovß prom∞nnß klienta] |
Od verze:
5.1, ·prava v 6.0, 6.1, 7.0
Popis
Server WinBase602 umo₧≥uje nastavit, do jakΘ mφry se mß zachovat kompatibilita se starÜφmi verzemi oproti striktnφmu dodr₧enφ norem SQL. Toto nastavenφ lze libovoln∞ m∞nit i za b∞hu jednΘ aplikace a pro r∙znΘ klienty mohou ve stejnΘm okam₧iku platit r∙znß nastavenφ.
Do parametru mask zapiÜte souΦet hodnot voleb, kterΘ chcete nastavovat (nap°. volba SQLOPT_NULLEQNULL mß b²t nastavena, volba SQLOPT_NULLCOMP nemß b²t nastavena (byla nastavena ji₧ d°φve a nynφ to chcete zruÜit): zadejte hodnotu 3(=1+2)).
Do parametru value zapiÜte pro volbu, kterß mß b²t nastavena jejφ hodnotu, pro volbu, kterß nemß b²t nastavena hodnotu nula (p°φklad z min. odstavce: zadejte hodnotu 1(=1+0)).
K dispozici jsou tato nastavenφ:
jmΘno volby | hodn. | Φeho se t²kß | stav je-li nastaveno (WB syntax) | stav nenφ-li nastaveno (SQL syntax) |
SQLOPT_NULLEQNULL | 1 | porovnßnφ dvou hodnot NULL (*) | v²sledek je TRUE | v²sledek je UNKNOWN |
SQLOPT_NULLCOMP | 2 | operace mezi NULL a jinou hodnotou (*) | NULL je menÜφ v relacφch a je inertnφm prvkem v ostatnφch operacφch | v²sledek relacφ je UNKNOWN, ostatnφch operacφ NULL |
SQLOPT_RD_PRIVIL_VIOL | 4 | pou₧itφ hodnoty, k nφ₧ nenφ prßvo Φtenφ | mφsto utajenΘ hodnoty se pou₧ije NULL | dojde k chyb∞ |
SQLOPT_MASK_NUM_RANGE | 8 | p°eteΦenφ ΦφselnΘho rozsahu p°i konverzi | v²sledkem je NULL | dojde k chyb∞ |
SQLOPT_MASK_INV_CHAR | 16 | °et∞zec znak∙ nelze konvertovat na po₧adovan² typ | v²sledkem je NULL | dojde k chyb∞ |
SQLOPT_MASK_RIGHT_TRUNC | 32 | p°i typovΘ konverzi na typ °et∞zec dochßzφ ke ztrßt∞ znak∙ na pravΘm konci | znaky jsou ztraceny | dojde k chyb∞ |
SQLOPT_EXPLIC_FREE | 64 | zruÜenφ a uvoln∞nφ zßznamu | zruÜenΘ zßznamy se uvol≥ujφ funkcφ Free_deleted |
zruÜenΘ zßznamy se uvol≥ujφ ihned po zruÜenφ |
SQLOPT_OLD_ALTER_TABLE | 128 | syntaxe ALTER TABLE | pou₧ije se p∙vodnφ varianta ALTER TABLE (stejnΘ jako nßvrhß°) | pou₧φvß se varianta ALTER TABLE podle normy SQL |
SQLOPT_DUPLIC_COLNAMES | 256 | kdy₧ se dva sloupce v odpov∞di na dotaz jmenujφ stejn∞ | ponechajφ se stejnß jmΘna, lze je rozliÜit pomocφ prefix∙ | sloupce se automaticky p°ejmenujφ |
SQLOPT_USER_AS_SCHEMA | 512 | prefixovßnφ jmen tabulek jmΘnem u₧ivatele | prefix se v₧dy pova₧uje za jmΘno schΘmatu | pokud se prefix shoduje se jmΘnem p°ihlßÜenΘho u₧ivatele, ignoruje se |
SQLOPT_DISABLE_SCALED | 1024 | v²skyt Φφseln²ch necel²ch p°esn²ch typ∙ v odpov∞di na dotaz (NUMERIC) | pokud nelze pova₧ovat za typ Money, je automaticky konvertovßn na typ Real | typ se zachovß |
SQLOPT_ERROR_STOPS_TRANS | 2048 | reakce transakce na chybu | transakce se ukonΦφ | transakce pokraΦuje a₧ do commitu nebo rollbacku |
SQLOPT_NO_REFINT_TRIGGERS | 4096 | spouÜt∞nφ trigger∙ p°i provßd∞nφ akcφ aktivnφ referenΦnφ integrity | triggery se nespouÜt∞jφ | triggery se spouÜt∞jφ |
(*) pro °et∞zce s hodnotou NULL (= prßzdnΘ °et∞zce) platφ bez ohledu na nastavenφ ·daje ze sloupce Syntax WB (porovnßnφ dvou NULL string∙ je TRUE apod.).
Obecn∞ platφ, ₧e je-li volba nastavena, zachovßvß se kompatibilita se starÜφmi verze WinBase602, nenφ-li nastavena, server se chovß dle norem SQL.
Po spuÜt∞nφ b∞hu klienta jsou vÜechny volby nastaveny (WB syntax).
Jako₧to procedura je implementovßno Set_sql_option
i na stran∞ serveru, aby bylo mo₧no parametry nastavovat i bez pou₧itφ klientskΘho programu. V parametrech se pak musφ pou₧φt ΦφselnΘ hodnoty konstant. P°φklad volßnφ v SQL:
CALL Set_sql_option(255,0)
Hodnota funkce
Funkce vracφ p°i ne·sp∞chu TRUE;
P°φklad:
Nastavit vÜechny volby do re₧imu kompatibility s SQL2:
Set_sql_option(255,0);
Nastavit vÜechny volby do re₧imu kompatibility se starÜφmi verzemi serveru:
Set_sql_option(255,255);