sql >> Databáze >  >> RDS >> Database

Filtrování tabulek v IRI Workbench

IRI Workbench poskytuje řadu funkcí pro práci s více tabulkami v databázi. Zahrnuje průvodce pro: profilování databází; klasifikovat sloupce; podmnožina, maska ​​a migrace dat; generovat testovací data; atd.

Nástroje v IRI Workbench mohou pomoci vybrat, které tabulky jsou k dispozici těmto průvodcům, stejně jako v konkrétním diagramu vztahů nebo při skenování tabulek pro vzory nebo kolekce citlivých hodnot. S příliš mnoha tabulkami v databázi může být zdrcující vizualizovat, vybírat a skenovat všechna data a metadata. Jedním z řešení tohoto problému s přetížením dat je filtrování tabulek, které jsou viditelné v kteroukoli konkrétní dobu.

Filtry

Je jednodušší pracovat s menšími sadami stolů najednou. Obvykle je rozumné množství několik stovek souvisejících tabulek najednou. Naštěstí v rámci IRI Workbench existuje mechanismus pro omezení seznamu zobrazených tabulek pomocí filtru.

Tabulky, které jsou odfiltrovány, jsou vyloučeny ze seznamu v Průzkumníku zdrojů dat, což je hlavní pohled do struktury databáze. Také se neobjevují ve výběrových seznamech v průvodcích a jsou vynechány během skenování dat v celém schématu, což urychluje klasifikaci těžko dostupných dat. Snížení počtu tabulek na nějakou logickou sadu se zvládnutelným množstvím dat usnadňuje uživateli soustředit se na daný úkol. Je možné vytvořit více profilů připojení, aby se zobrazily pouze ty tabulky související s konkrétní úlohou.

Jednoduché filtrování podle názvu tabulky je integrovanou funkcí projektu Eclipse Data Tools Platform (DTP), která se používá pro přístup k databázi v IRI Workbench. Lze jej však použít pouze ke specifikaci názvů tabulek, které začínají nebo nezačínají určitými znakovými řetězci, obsahují nebo končí. Jsou chvíle, kdy je zapotřebí sofistikovanější přístup.

DTP také umožňuje výběr seznamu názvů tabulek pro zahrnutí nebo vyloučení na základě schématu. To zahrnuje načtení všech názvů tabulek na stránku průvodce a následné použití výběru zaškrtnutím u všech názvů tabulek, které mají být zahrnuty nebo vyloučeny. To funguje dobře pro malý počet tabulek, ale rychle se stane neovladatelným, když se seznam tabulek rozroste do tisíců nebo dokonce desítek tisíc.

Existuje poměrně snadné řešení, které umožňuje výběr tabulky podle názvu na základě externího seznamu poskytnutého uživatelem. Tento seznam může být vygenerován externím nástrojem nebo jako výsledek SQL dotazu. Jako příklad tento příspěvek krok za krokem ukáže, jak toho lze dosáhnout.

Připravte seznam tabulek

K vytvoření seznamu tabulek lze použít mnoho různých metod dotazů. Jednou z užitečných metod je odfiltrovat všechny tabulky, které mají nula řádků dat. V tomto konkrétním příkladu však bude SQL dotaz použit k extrakci seznamu tabulek, které mají být zahrnuty do filtru, na základě shody s názvy tabulek. Seznam vybraných tabulek bude krátký, aby byl příklad snadněji sledovatelný. Stejná technika bude fungovat pro filtrování tabulek na základě mnohem delšího seznamu.

Tabulky, které nás zajímají v tomto příkladu, mají dva formáty, buď začínají písmenem D, následovaným libovolným znakem a poté podtržítkem, nebo začínají řetězcem „IRI_“. Za každým vzorem pak může následovat libovolný počet dalších znaků.

Podtržítko bylo záměrně vybráno jako znak zájmu, protože ve strukturovaném dotazovacím jazyce (SQL) představuje podtržítko jeden zástupný znak. Proto použití podtržítka ve výrazu filtru DTP nebo příkazu SQL není přímočaré.

Tento příklad je založen na databázi Oracle a ukáže, jak uniknout znaku podtržení, aby jej bylo možné použít doslova v klauzuli where dotazu. Dotaz, který vytvoří seznam tabulek odpovídající výše uvedeným kritériím:

SELECT TABLE_NAME
  FROM ALL_TABLES 
  WHERE ( 
    TABLE_NAME LIKE 'D_\_%' ESCAPE '\' OR 
    TABLE_NAME LIKE 'IRI\_%' ESCAPE '\' 
  ) 
  AND OWNER LIKE 'SCOTT'
;

Všimněte si použití zpětného lomítka k uniknutí znaku podtržítka tam, kde by měl být interpretován doslovně. Tento dotaz lze provést z SQL Scrapbook soubor v rámci IRI Workbench. Výsledky se zobrazí v Výsledcích SQL zobrazit okno. S kurzorem v editoru souboru SQL Scrapbook klikněte pravým tlačítkem na kontextovou nabídku a vyberte Spustit vše .

Dotaz bude také nutné spustit samostatně pro jakékoli jiné schéma (VLASTNÍK), které potřebuje seznam filtrovaných tabulek. Výsledky dotazů pro různá schémata budou uchovávány odděleně a zpracovány podobným způsobem.

Výsledky budou viditelné na Výsledku 1 na kartě Výsledky SQL Pohled. Z kontextové nabídky tohoto zobrazení vyberte Exportovat> Aktuální výsledek . V dalším dialogu exportujte výsledek do složky projektu v pracovním prostoru jako soubor ve formátu CSV.

Seznam tabulek do souboru importu profilu připojení

Eclipse DTP poskytuje mechanismus pro import a export jednoho nebo více profilů připojení k databázi z nebo do speciálně definovaného souboru XML. Zde bude postup spočívat v tom, že nejprve připravíte soubor CSV pro vložení do souboru importu, poté vyexportujete profil připojení, který bude filtrován, a nakonec upravíte exportní soubor se seznamem názvů tabulek jako podmínku filtru.

Otevřete datový soubor CSV v textovém editoru IRI Workbench. Soubor CSV nebude naformátován přesně tak, jak je potřeba. Nejprve odstraňte úplně první řádek se záhlavím sloupce. Dále musí být názvy tabulek ohraničeny jednoduchými uvozovkami místo dvojitými uvozovkami a každý název musí být oddělen čárkou.

Stisknutím Ctrl+F vyvolejte Najít/nahradit dialog. Zadejte následující vzory pro F ind: ^”(.*)”$ a R e místo s: „\1“, a vyberte Regular e x zobrazení volba. Stiskněte Nahradit A ll a poté soubor uložte. Soubor seznamu tabulek je nyní připraven k použití v souboru importu.

Dalším krokem je připravit export profilu připojení k databázi bez použití filtru názvu tabulky. Tlačítko exportu profilu připojení se nachází v Průzkumníku zdrojů dat zobrazit panel nástrojů. Vypadá jako koš se šipkou směřující nahoru a doprava. Zaškrtněte profil připojení, který potřebuje filtr, a v pracovním prostoru projektu zadejte název souboru s příponou .xml. Nezapomeňte také zrušit zaškrtnutí políčka Šifrovat obsah souboru před uložením souboru.

Otevřete soubor exportu XML v IRI Workbench. Klikněte na Zdroj ve spodní části okna editoru XML. Stisknutím Shift+Ctrl+F naformátujete XML na více řádků, abyste jej mohli snadněji upravovat. V horní části, přímo uvnitř profilu tag, je řádek s atributy id a jméno .

Přejděte na web jako https://www.guidgen.com/ a vygenerujte nový GUID, kterým nahradíte hodnotu v id atribut. Upravte jméno atribut pro přidání slova „filtrováno“ nebo jiného indikátoru, který bude identifikovat nový profil připojení.

Níže je uveden náhled před a po ukázkovém profilu připojení:

Před:

Po:

Dále najděte řádek, který má:

<org.eclipse.datatools.connectivity.sqm.filterSettings />

Pokud jsou uvnitř značky již další prvky, znamená to, že na schémata v profilu připojení jsou již použity filtry. Mohou být ponechány na místě a mohou být vloženy nové filtry tabulek pro další schémata.

V opačném případě lze vlastnosti profilu připojení upravit a odstranit je před dalším exportem. Řádek výše musí být nahrazen následujícím:

<org.eclipse.datatools.connectivity.sqm.filterSettings>
  <property name="::SCOTT::DatatoolsTableFilterPredicate" 
  value="IN()" />
</org.eclipse.datatools.connectivity.sqm.filterSettings>

Vraťte se zpět do upraveného datového souboru CSV se seznamem tabulek. Vyberte veškerý text a zkopírujte jej do schránky. Vraťte se do souboru XML a vložte obsah schránky přímo do závorek v textu bezprostředně nad ním. Všimněte si, že pokud je název schématu (VLASTNÍK) ve vlastnosti tag, musí být změněn tak, aby odpovídal názvu filtrovaného schématu.

Pokud existují další schémata se seznamy tabulek, opakujte kroky pro přidání další vlastnosti značky. Pokud má být seznam tabulek spíše vyloučen než zahrnut, vložte klíčové slovo NOT před slovem IN . Výsledný XML v tomto jednoduchém příkladu je uveden níže. Ve složitější databázi mohou být tisíce řádků názvů tabulek. Po dokončení všech úprav vyberte Soubor> Uložit jako… a uložte soubor pod novým názvem.

Importujte profil filtrovaného připojení

Nově vytvořený soubor XML s filtrovaným profilem připojení lze importovat a vytvořit novou kopii exportovaného profilu s aplikovaným filtrováním. Tlačítko pro import profilu připojení se nachází v Průzkumníku zdrojů dat zobrazit panel nástrojů, hned nalevo od tlačítka exportu. Vypadá jako koš se šipkou směřující dolů a doprava. Vyhledejte soubor XML, který byl upraven pomocí seznamu tabulek. Pokud již existuje profil se stejným názvem, zaškrtnutím políčka jej přepište.

Nakonec otevření profilu připojení a přechod na filtrované schéma způsobí, že se zobrazí pouze ty tabulky, které jsou v seznamu:


  1. Skupiny konverzace SQL Server Service Broker

  2. Potřebujete Oracle SQL k rozdělení rozsahu data/času na den

  3. Databázi nelze otevřít, protože je verze 782. Tento server podporuje verzi 706 a starší. Cesta na nižší verzi není podporována

  4. Jak vytvořit formulář pomocí Průvodce formulářem