© Copyright International Business Machines Corporation 2006. Všechna práva vyhrazena. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM® Corp.
Na pracovní ploše jsou dva nové typy datových projektů:
- projekty návrhu dat
- projekty vývoje dat
Projekty návrhu dat se používají pro vytvoření a uložení datových modelů, například fyzické datové modely a logické datové modely. Projekty vývoje dat se používají pro vytvoření a uložení objektů pro vývoj datových aplikací, například uložené procedury a uživatelsky definované funkce (také známé jako rutiny). Rutiny lze zobrazit také z projektů návrhu dat jako součást fyzického datového modelu. Avšak podpora vývoje pro rutiny z projektu návrhu dat je velmi omezená a pro rutiny v projektu návrhu dat neexistuje podpora nástrojů SQL. Pokud vyvíjíte rutiny, je doporučeno používat projekt vývoje navržených dat, který poskytuje kompletnější podporu včetně průvodců, editorů rutin, podpory ladění a integrace nástrojů SQL.
Pokud v editoru tabulkových dat provedete ověření XML na tabulce XML, která nemá primární klíč, ověření platnosti XML bude pracovat pouze poprvé, pokud vložíte hodnotu XML. Navíc aktualizace existujícího sloupce XML s ověřením platnosti XML selže.
Náhradní řešení: Vytvořte primární klíč pro tabulky, které obsahují sloupce XML.
Práce s více kořenovými prvky v tomto editoru může vést k chybám, pokud uložíte anotovaný soubor XSD.
Náhradní řešení: Vytvořte oddělenou sadu souborů dokumentu Schématu XML pro každý kořenový prvek.
Abyste mohli použít typ dat XML a pracovat se schématy XML, musíte se připojit k databázi UTF -8. Množství vrácených dat z databáze pro dokumenty XML není omezeno. V závislosti na množství dat, které vrátíte, může být ovlivněn výkon.
- Editor SQL momentálně nepodporuje proměnné hostitele během akce Spustit SQL.
Náhradní řešení: Můžete spustit SQL z tvůrce SQL, jedná-li se o příkaz DML.
- V tvůrci SQL není podporována plná syntaxe SQL. Například, UDT (uživatelsky definované typy) a tabulkové funkce nejsou podporovány.
- UDT nejsou podporované jako parametry pro rutiny.
- Abyste zavedli uložené procedury Java ™, které mají jako cíl databázi DB2™ UDB for iSeries® ze systému souborů s pomocí nasazení nástroje Ant, musíte se ujistit, že máte soubor jt400.jar na cestě ke třídě vašeho systému. Pokud se pokusíte implementovat exportovanou uloženou proceduru s pomocí instrukcí v souboru DeployInstructions.txt, můžete následně obdržet chybovou zprávy, která tvrdí:
...[createsp] Nebylo navázáno spojení s cílovou databází.
[createsp] com.ibm.db2.jcc.DB2Driver...Náhradní řešení: Ujistěte se, že soubor db2jcc.jar a odpovídající licenční soubory jsou na cestě ke třídě vašeho systému.
- Možná se při implementaci nebo spouštění uložených procedur Java zobrazila chyba "nelze zavést třídu". Toto se může stát, pokud dojde k výskytu neshody v rámci verze JDK mezi RAD v7 a serverem DB2®, pokud server DB2 je na nižší úrovni JDK.
Náhradní řešení: Měli byste uvést volbu "-source 1.4" v poli Kompilovat volby průvodce Implementace rutin, když implementujete procedury uložené v Javě na serverech, které používají JDK, úroveň 1.4. (například server DB2 Universal Database pro Linux®, UNIX® a Windows® V8.2). Obecně použijte odpovídající volbu kompilace "-source JDK level ", aby se shodovala s úrovní JDK na databázovém serveru.
- Pokud implementujete uložené procedury nebo UDF s pomocí funkčnosti implementace nástroje Ant, může se vám zobrazit tato zpráva, pokud nemáte soubor tools.jar umístěný na cestě ke třídě:
Nelze najít umístění souboru tools.jar. Očekávané umístění je v souboru F:\jre\1.4.2\lib\tools.jar
Soubor tools.jar je součástí prostředí JRE (Java Runtime Environment) a není součástí nástroje pro implementaci Ant.Náhradní řešení: Soubor tools.jar není potřebný pro spuštění skriptu Ant, nyní můžete tuto zprávu ignorovat.
- Pokud změníte název metody Java v editoru uložených procedur, nemůžete uložit proceduru správně poklepáním na pravé tlačítko myši na zdrojové stránce editoru, pak výběrem Uložit.
Náhradní řešení: Uložte proceduru klepnutím na Soubor->Uložit, stisknutím kláves Ctrl+S nebo klepnutím na ikonu Uložit.
- Pokud přetáhnete uloženou proceduru nebo UDF mezi nestejnými servery (například ze serveru DB2 Universal pro Linux, UNIX a Windows na server DB2 Universal for z/OS®), zobrazí se během operace přetažení varování o určitých nesouladech mezi dvěma servery. Pokud budete pokračovat v operaci a pokusíte se otevřít uloženou proceduru nebo UDF, pravděpodobně se zobrazí chyba.
- Spuštění profilování SQL na serveru DB2 UDB pro Linux, UNIX a Windows verze 8.2 může způsobit výjimku ukazatele s hodnotou null, pokud na serveru chybí předpokládaná uložená procedura (SYSIBM.SQLCAMESSAGECCSID), která je požadovaná ovladačem JCC pro načtení textu chybové zprávy.
Náhradní řešení: můžete navázat spojení se serverem bez nastavení parametru retrieveMessagesFromServerOnGetMessage=true.
- Během monitorování provedení procedury SQL jsou události generovány pro příkazy DML jako INSERT, SELECT, DELETE a UPDATE, které jsou vydávané v proceduře. Avšak události nejsou generovány deterministickým způsobem pro procedurální příkazy jako přiřazení proměnných a řídicí struktury jako WHILE nebo IF. Proto se informace o profilování nemohou generovat pro procedurální příkazy.
- Jste-li připojeni k serveru UNIX DB2, mohou se vyskytnout výjimky pro překročení časového limitu při přidávání bodů přerušení nebo spouštění režimu ladění.
- Ladicí program neběží pro uložené procedury, jejichž název obsahuje jak anglické, tak čínské znaky.
- Výrazy Watch jsou podporované pouze pro dynamické uložené procedury Java. Nejsou podporované pro uložené procedury SQL a SQLJ.
- Ladicí program nezastaví bod přerušení, není-li umístěn na prvním tokenu spustitelného příkazu jako SET. Navíc se nezastaví při vydání příkazu DECLARE CONTINUE, CLOSE CURSOR nebo ROLLBACK.
- Pokud ladíte uložené procedury Java a volíte akci Ukončit, mohlo by trvat několik minut, aby byla relace ladění plně ukončená. Nové relace ladění, které se spustí v této době, mohou být ukončeny chybami.
- Pokud ladíte uloženou proceduru Java, která volá druhou uloženou proceduru Java, nemůžete ladit druhou uloženou proceduru. Nemůžete vkročit do vnořené uložené procedury, libovolné body přerušení, které nastavíte na vnořené uložené proceduře, budou ignorovány. Toto omezení je pro servery Linux, UNIX a Windows.
- Pokud se zobrazí chyba 'Výskyt překročení časového limitu během čekání na paket' během ladění uložené procedury Java, zkuste zvýšit nastavení časového limitu Javy.
Náhradní řešení: Nastavení časového limitu Java zvýšíte klepnutím na Okno > Předvolby z pruhu nabídky na pracovní ploše. Rozbalte uzel Java a klepněte na Ladit. Na stránce Předvolby ladění zvyšte hodnotu Časový limit ladicího programu(ms) v sekci Časový limit komunikace. Doporučujeme vám předvolenou hodnotu alespoň zdvojnásobit.
- Pokud ladíte uloženou proceduru Java, když používáte akci Změnit hodnotu, abyste upravili proměnnou, která má prázdnou hodnotu řetězce, tlačítko OK v dialogu pro úpravy nemusí být zpřístupněné.
Náhradní řešení: Abyste zpřístupnili tlačítko, vyberte přepínač Vstup vyhodnocení, nastavte hodnotu na vyplněný řetězec (například 'a') a potom vyberte přepínač Vstup literálového textu. Tlačítko OK bude potom dostupné.
- Pokud nevidíte lokální proměnné během ladění uložené procedury Java, uložená procedura mohla být implementovaná bez volby kompilátoru -g.
Náhradní řešení: Ujistěte se, že jste při implementaci uložené procedury Java použili volbu kompilátoru -g.
- Pokud se zobrazí zpráva 'neplatný rámec bloku zásobníků' v zobrazení Proměnné, přejděte na zobrazení Ladění a klepněte na objekt vlákna nad rámcem bloku zásobníků, potom klepněte na blok zásobníků. Toto by mělo obnovit zobrazení Proměnné a chyba již by se neměla vyskytovat.
- Pokud ladíte uloženou proceduru SQLJ, která běží na serveru DB2 UDB for iSeries V5 R4, momentálně prováděný řádek nebude odpovídat označenému zdrojovému řádku SQLJ zobrazenému v zobrazení Ladění, pokud nepoužijete opravu iSeries PTF, která aktualizuje mapu řádku na odpovídající zdroji SQLJ místo zdroje Java.
- Předvolby ladicího programu pro časový limit správce relace (Okno > Předvolby, pak rozbalte Spustit/Ladit a klepněte na DB2 Stored Procedure Debugger, pak upravte časový limit správce relace v poli pro minuty) nejsou rozpoznány.
- Ladicí program nemůže zpracovat uloženou proceduru, která má velké množství proměnných na serveru DB2 pro Linux, UNIX a Windows. Maximální počet proměnných je 200.
- Pohyb kurzoru v relaci ladění: Pokud v některých případech existuje více než jedna deklarace proměnné v proceduře, musíte klepnout na Vstoupit do nebo Překročit více než jednou, abyste se přesunuli na další řádek. Například musíte klepnout dvakrát na tento řádek: DECLARE v_dept, v_actdept CHAR(3); a třikrát na tento řádek: DECLARE v_bonus, v_deptbonus, v_newbonus DECIMAL(9,2); musíte tolikrát klepnout, jak velký je počet deklaracích proměnných.
- Pokud spustíte relaci ladění pro uloženou proceduru Java a přidáte bod přerušení, zablokujte bodu přerušení, protože jsou stále zpřístupněné.
Náhradní řešení: Nejprve odeberte všechny staré body přerušení, potom přidejte nové bodu přerušení.
- V některých případech, pokud pracujete s vývojovými projekty pro více dat, může se vyskytnout chyba, když se snažíte ladit uloženou proceduru, která říká "Povolit, aby bylo nalezeno umístění uložené procedury PROCNAME. Procedura mohla být odstraněna z pracovního prostoru" nebo "Prostředek nenalezen".
- Po ladění vnořené uložené procedury SQL může někdy datový výstup stále zobrazovat, že ladicí program běží, a to může způsobit problémy při libovolném dalším spuštění nebo implementaci uložených procedur.
Náhradní řešení: Správce relací je třeba provést na počítači klienta, kde je nainstalován vývojářský produkt. Chcete-li spustit správce relací, spusťte soubor db2dbgm.bat z adresáře produktu Install bin.
- Existuje omezená podpora pro ladění uložených procedur na serverech DB2 V8 Linux, Unix, Windows a z/OS. Pouze procedury SQL lze ladit na serveru DB2 V8, který má nainstalovanou sadu oprav 14. Aby ladicí program pracoval pro server DB2 V8, správce relací musí také být zpracován na počítači klienta, kde je nainstalován vývojářský produkt. Chcete-li spustit správce relací, spusťte soubor db2dbgm.bat z adresáře produktu Install bin.
- ALIAS, MQT, NICKNAME a SYNONYM jsou nyní podporované během inženýrství vzájemné komunikace, ale nejsou podporované v procesu mapování EJB.
- Omezená podpora pro MySQL 4.1: Následující vlastnosti nejsou zobrazené správně v zobrazení Vlastnosti: jedinečný index, automaticky přírůstkové sloupce, předvolená hodnota sloupce pro NULL a binární hodnotu. Navíc procedury a funkce C nejsou podporované.
- Spouštěče, kontrolní omezení a zobrazení nejsou podporovaná pro Cloudscape® v5.1 : spouštěče a kontrolní omezení Cloudscape v5.1 nejsou zobrazená v Průzkumníku databáze. Zobrazení Cloudscape v5.1 chybí v těle SQL v zobrazení Vlastnosti. Nemůžete generovat DDL nebo spouštěče, kontrolní omezení nebo zobrazení reverzního inženýrství Cloudscape v5.1.
- Existuje omezená podpora pro uživatelsky definované strukturované datové typy v Oracle: Název uživatelsky definovaného strukturovaného datového typu nebude zahrnut v definici tabulky při generování DDL pro tabulku Oracle.
- Obnova objektu kontejneru v průzkumníku databáze může selhat a způsobit tuto výjimku: "nelze upravit množinu prostředků bez transakce zápisu" po uzavření editoru pro porovnání, který byl otevřen pro porovnání objektů v kontejneru průzkumníka databáze. Například, porovnání tabulky ve fyzickém datovém modelu s původním prostředkem může způsobit tuto výjimku.
Náhradní řešení: Když to nastane, můžete vybrat kontejner, který obsahuje objekt kontejneru, a pokusit se jej znovu obnovit. Například, pokud selže obnova tabulky, pak se pokuste obnovit schéma, které tabulku obsahuje. Pokud pokusy dále selhávají, budete muset odpojit a znovu připojit databázi.
Pokud definujete tabulku jedním sloupcem typu dat XML nebo libovolnou tabulkou s nejedinečnými řádky a potom použijete tabulkový editor pro výmaz řádku, všechny řádky, které se shodují se zvoleným řádkem, budou odstraněny.
Náhradní řešení: Nepoužívejte editor tabulkových dat pro výmaz řádku v tabulce s duplicitními řádky.