Porovnávané verzie

Kľúč

  • Tento riadok sa pridal
  • Riadok je odstránený.
  • Formátovanie sa zmenilo.

...

Proces D2000 DBManager bol testovaný a mal by fungovať s týmito databázami:

  • Oracle Database (verzie 9i, 10g, 11g, 12c, 18c, 19c)
    Poznámka: odporúčame aplikovať dostupné patche na Oracle klienta aj Oracle ODBC ovládač - staršie verzie ovládača a Oracle klienta trpeli rôznymi chybami (presakovanie pamäte, nestabilita a pod.)
  • Microsoft SQL Server (verzie 2000 - 2005)a vyyššie)
    Poznámka: v konkrétnej situácii dokázal UPDATE trigger ovplyvniť akciu DB(S)_UPDATE tak, že zlyhala a to kvôli tomu, že ODBC funkcia SQLRowCount vrátila 0 (napriek tomu, že k aktualizácii dát došlo). Tento prípad je možné diagnostikovať po zapnutí ladiacej kategórie RTM.DBMANAGER.UPDATE.MSSQL.0 (ak je kategória aktívna, ignoruje sa, že SQLRowCount vráti 0 zmenených riadkov).
  • Microsoft Access (verzie 2000 - XP)
  • PostgreSQL (verzie 9.x a vyššie). Dbmanager podporuje štartovací parameter /NQ na lepšiu podporu práce s PostgreSQL (citlivosť na malé/veľké písmená v názvoch tabuliek a stĺpcoch).
    Poznámka 1: v konfigurácii ODBC ovládačov pre PostgreSQL odporúčame nastaviť parameter "Level of rollback on errors" na hodnotu Statement. Nastavenie Nop spôsobí, že databázové spojenie je po ľubovolnej chybe nepoužiteľné. Nastavenie Transaction spôsobí neštandardné chovanie niektorých akcií (napr. akcia DB(S)_INSUPD vkladajúca niekoľko riadkov nevloží nič, ak pri vkladaní niektorého riadku dôjde k chybe).
    Poznámka 2: v konfigurácii ODBC ovládačov pre PostgreSQL odporúčame nastaviť parameter "Max Varchar" na dostatočne veľkú hodnotu (väčšiu ako maximálna veľkosť VARCHAR stĺpcov), v opačnom prípade môžu byť pri stránkovom prístupe dáta orezané. Podobne odporúčame nastaviť parameter "Max LongVarchar" na dostatočne veľkú hodnotu (väčšiu ako maximálna používaná veľkosť VARCHAR dát v stĺpcoch, ktorých veľkosť nie je explicitne špecifikovaná).
    Poznámka 3: v konfigurácii ODBC ovládačov pre PostgreSQL odporúčame ponechať zaškrtnutý parameter "bytea as LO" kvôli korektnej práci s BLOBmi (DB_READ_BLOB, DB_UPDATE_BLOB).
  • Sybase Anywhere (verzie 6 - 12)
  • Informix (verzia 4.10.00.16554, nutné zapnúť na záložke Advanced voľbu Scrollable Cursors a na záložke Environment nastaviť Cursor Behavior na hodnotu "1 - Preserve")
  • Firebird (verzia 2.0.4, natívny ODBC ovládač alebo ovládač od GM - Software)
    Poznámka 1: Natívny ODBC ovládač (verzia 2.0.0.148) neumožňuje editovanie v stránkovom prístupe (browser v HI, akcie PG*). Navonok editovanie funguje, ale do databázy sa zmeny nezapíšu.
    Poznámka 2: ODBC ovládač firmy GM - Software umožňuje pridávanie dát v stránkovom prístupe a editáciu, ale zobrazuje iba prvý riadok v tabuľke.

...

  • RTM.DBMANAGER.UPSERT - Na platforme PostgreSQL sa použije UPSERT (INSERT ... ON CONFLICT (...) DO UPDATE ) pri vkladaní dát akciou DB(S)_INSUPD. Túto syntax podporuje PostgreSQL od verzie 9.5.
  • RTM.DBMANAGER.UPDATE.MSSQL.0 – Na platforme Microsoft SQL Server pri aktualizácii údajov pomocou akcií DB(S)_UPDATEDB(S)_INSUPD je ignorovaných chybne vrátených 0 zmenených riadkov (v dôsledku UPDATE triggra na tabuľke).

Rôzne runtime kategórie procesu dbmanager_ora.exe:

  • RTM.DBMANAGER.STRICT_CHECK - Ak je v tabuľke stĺpec textového typu a v D2000 je tento stĺpec numerický, môže pri načítaní dôjsť k chybe konverzie na číslo (ORA_01722: invalid number). Ak je aktívna táto runtime kategória vykonáva sa prísna kontrola typov stĺpcov a pokiaľ je zistený takýto stĺpec, DbManager odmietne s tabuľkou pracovať (a log bude obsahovať chybové hlášky).
  • RTM.DBMANAGER.NO_COUNT_OVER - Pri stránkovom prístupe (akcia PG_CONNECT a browser) sa štandardne zisťuje počet záznamov pomocou načítania v rámci SQL dotazu ( COUNT(*) OVER () ). V niektorých prípadoch môže byť toto načítanie pomalšie ako spustenie explicitného dotazu (SELECT COUNT(*) FROM <table>). Konkrétny prípad sme zaznamenali na Oracle 19.21 a tabuľke s viac ako 2.6 milióna riadkov (pri veľkosti SGA 12GB). Ak je aktívna táto runtime kategória, zisťovanie počtu riadkov bude prebiehať pomocou explicitného dotazu pred samotným načítaním dát.


Info
titleBlog

O procese DbManager si môžete prečítať nasledujúce blogy:



Info
titleSúvisiace stránky:

Procesy systému

...