Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Penyaringan Tabel di Meja Kerja IRI

IRI Workbench menyediakan sejumlah fitur untuk bekerja di beberapa tabel dalam database. Ini mencakup wizard untuk: database profil; mengklasifikasikan kolom; subset, mask dan migrasi data; menghasilkan data uji; dll.

Alat di IRI Workbench dapat membantu memilih tabel mana yang tersedia untuk wizard tersebut, serta dalam diagram hubungan tertentu, atau dalam memindai tabel untuk pola atau kumpulan nilai sensitif. Dengan terlalu banyak tabel dalam database, memvisualisasikan, memilih, dan memindai semua data dan metadata bisa sangat melelahkan. Salah satu solusi untuk masalah kelebihan data ini adalah memfilter tabel yang terlihat pada satu waktu tertentu.

Filter

Lebih mudah untuk bekerja dengan set tabel yang lebih kecil pada satu waktu. Biasanya, beberapa ratus tabel terkait sekaligus adalah jumlah yang wajar. Untungnya, ada mekanisme di dalam IRI Workbench untuk membatasi daftar tabel yang ditampilkan, menggunakan filter.

Tabel yang difilter dikecualikan dari daftar di Penjelajah Sumber Data, tampilan utama ke dalam struktur database. Mereka juga tidak muncul dalam daftar pilihan di wizard, dan dilewati selama pemindaian data di seluruh skema, mempercepat klasifikasi data yang sulit ditemukan. Mengurangi jumlah tabel menjadi beberapa kumpulan logis, dengan jumlah data yang dapat dikelola, memudahkan pengguna untuk fokus pada tugas yang ada. Beberapa profil koneksi dapat dibuat untuk hanya menampilkan tabel yang terkait dengan tugas tertentu.

Pemfilteran sederhana berdasarkan nama tabel adalah fitur bawaan dari proyek Eclipse Data Tools Platform (DTP), yang digunakan untuk akses database di IRI Workbench. Namun, ini hanya dapat digunakan untuk menentukan nama tabel yang memiliki, atau tidak, dimulai dengan, berisi, atau diakhiri dengan, string karakter tertentu. Ada kalanya pendekatan yang lebih canggih diperlukan.

DTP juga memungkinkan daftar nama tabel untuk dipilih baik untuk penyertaan, atau pengecualian, pada basis per skema. Ini melibatkan pemuatan semua nama tabel ke halaman panduan, dan kemudian menerapkan pilihan tanda centang ke semua nama tabel yang akan disertakan atau dikecualikan. Ini bekerja dengan baik untuk sejumlah kecil tabel, tetapi dengan cepat menjadi tidak terkendali ketika daftar tabel bertambah menjadi ribuan, atau bahkan puluhan ribu.

Ada solusi yang relatif mudah yang memungkinkan pemilihan tabel berdasarkan nama, berdasarkan daftar eksternal yang disediakan oleh pengguna. Daftar ini dapat dibuat oleh alat luar, atau sebagai hasil dari kueri SQL. Sebagai contoh, postingan ini akan menunjukkan, langkah demi langkah, bagaimana hal ini dapat dilakukan.

Siapkan Daftar Tabel

Banyak metode kueri yang berbeda dapat digunakan untuk membuat daftar tabel. Salah satu metode yang berguna adalah menyaring semua tabel yang memiliki nol baris data. Namun, dalam contoh khusus ini, kueri SQL akan digunakan untuk mengekstrak daftar tabel untuk disertakan dalam filter berdasarkan pencocokan terhadap nama tabel. Daftar tabel yang dipilih akan dibuat singkat, untuk membuat contoh lebih mudah diikuti. Teknik yang sama akan berfungsi untuk memfilter tabel berdasarkan daftar yang lebih panjang.

Tabel yang diinginkan dalam contoh ini memiliki dua format, dimulai dengan huruf D, diikuti dengan karakter apa pun, dan kemudian garis bawah, atau dimulai dengan string “IRI_”. Salah satu pola kemudian dapat diikuti oleh sejumlah karakter tambahan.

Garis bawah sengaja dipilih sebagai karakter yang menarik, karena dalam bahasa kueri terstruktur (SQL) garis bawah mewakili satu karakter wildcard. Oleh karena itu, menggunakan garis bawah dalam ekspresi filter DTP, atau pernyataan SQL, tidaklah mudah.

Contoh ini didasarkan pada database Oracle, dan akan menunjukkan cara keluar dari karakter garis bawah sehingga dapat digunakan secara harfiah dalam klausa where dari kueri. Kueri yang akan menghasilkan daftar tabel yang cocok dengan kriteria di atas:

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

Perhatikan penggunaan garis miring terbalik untuk menghindari karakter garis bawah di mana pun itu harus ditafsirkan secara harfiah. Kueri ini dapat dijalankan dari SQL Scrapbook file dalam IRI Workbench. Hasilnya akan ditampilkan di SQL Results lihat jendela. Dengan kursor di editor file SQL Scrapbook, klik kanan untuk menu konteks, dan pilih Execute All .

Kueri juga perlu dijalankan secara terpisah untuk skema lain (PEMILIK) yang memerlukan daftar tabel yang difilter. Hasil kueri untuk skema yang berbeda akan disimpan terpisah, dan diproses dengan cara yang sama.

Hasilnya akan dapat dilihat di Hasil 1 tab di Hasil SQL melihat. Dari menu konteks tampilan itu, pilih Ekspor> Hasil Saat Ini . Pada dialog berikutnya, ekspor hasilnya ke folder proyek di ruang kerja sebagai file berformat CSV.

Daftar Tabel ke File Impor Profil Koneksi

Eclipse DTP menyediakan mekanisme untuk mengimpor dan mengekspor satu atau lebih profil koneksi database dari atau ke file XML yang ditentukan secara khusus. Prosedur di sini adalah terlebih dahulu menyiapkan file CSV untuk dimasukkan ke dalam file impor, kemudian mengekspor profil koneksi yang akan difilter, dan terakhir memodifikasi file ekspor dengan daftar nama tabel sebagai kondisi filter.

Buka file data CSV di editor teks IRI Workbench. File CSV tidak akan diformat persis seperti yang dibutuhkan. Pertama, hapus baris pertama yang memiliki judul kolom. Selanjutnya, nama tabel harus dibingkai dengan tanda kutip tunggal, bukan tanda kutip ganda, dan koma harus memisahkan setiap nama.

Tekan Ctrl+F untuk memunculkan Temukan/Ganti dialog. Masukkan pola berikut untuk F di: ^”(.*)”$ dan R e tempat dengan: ‘\1’, dan pilih e Biasa x tayangan pilihan. Tekan tombol Ganti A akan tombol dan kemudian simpan file. File daftar tabel sekarang siap digunakan dalam file impor.

Langkah selanjutnya adalah menyiapkan ekspor profil koneksi database tanpa menerapkan filter nama tabel. Tombol ekspor profil koneksi ada di Penjelajah Sumber Data lihat bilah alat. Itu terlihat seperti keranjang dengan panah mengarah ke atas dan ke kanan. Tempatkan tanda centang di sebelah profil koneksi yang memerlukan filter, dan tentukan nama file dengan ekstensi .xml di ruang kerja proyek. Pastikan juga untuk menghapus centang pada Enkripsi konten file kotak sebelum menyimpan file.

Buka file ekspor XML di IRI Workbench. Klik pada Sumber tab di bagian bawah jendela editor XML. Tekan Shift+Ctrl+F untuk memformat XML menjadi beberapa baris, untuk memudahkan pengeditan. Di dekat bagian atas, tepat di dalam profil tag, adalah baris dengan atribut id dan nama .

Buka situs web seperti https://www.guidgen.com/ dan buat GUID baru untuk menggantikan nilai di id atribut. Edit nama atribut untuk menambahkan kata "difilter", atau indikator lain yang akan mengidentifikasi profil koneksi baru.

Di bawah ini adalah tampilan sebelum dan sesudah dari contoh profil koneksi:

Sebelum:

Setelah:

Selanjutnya, cari baris yang memiliki:

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

Jika sudah ada elemen tambahan di dalam tag, itu berarti sudah ada filter yang diterapkan ke skema di profil koneksi. Mereka mungkin dibiarkan di tempatnya, dan filter tabel baru dimasukkan untuk skema tambahan.

Jika tidak, properti profil koneksi dapat diedit untuk menghapusnya sebelum mengekspor lagi. Baris di atas harus diganti dengan yang berikut:

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

Kembali ke file data CSV yang telah diedit dengan daftar tabel. Pilih semua teks, dan salin ke clipboard. Kembali ke file XML, dan tempel konten clipboard langsung di antara tanda kurung di teks tepat di atas. Perhatikan bahwa jika nama skema (PEMILIK) ada di properti tag, itu harus diubah agar sesuai dengan nama skema yang difilter.

Jika ada skema tambahan dengan daftar tabel, ulangi langkah untuk menambahkan properti additional tambahan tag. Jika daftar tabel harus dikecualikan daripada disertakan, masukkan kata kunci TIDAK di depan kata IN . XML yang dihasilkan dalam contoh sederhana ini ditunjukkan di bawah ini. Dalam database yang lebih rumit, mungkin ada ribuan baris nama tabel. Setelah semua pengeditan selesai, pilih File> Save As… dan simpan file dengan nama baru.

Impor Profil Koneksi yang Difilter

File XML profil koneksi terfilter yang baru dibuat dapat diimpor, membuat salinan baru dari profil yang diekspor, dengan pemfilteran yang diterapkan. Tombol impor profil koneksi ada di Penjelajah Sumber Data lihat bilah alat, tepat di sebelah kiri tombol ekspor. Itu terlihat seperti keranjang dengan panah mengarah ke bawah dan ke kanan. Telusuri ke file XML yang dimodifikasi dengan daftar tabel. Jika profil dengan nama yang sama sudah ada, centang kotak untuk menimpanya.

Terakhir, membuka profil koneksi, dan menavigasi ke skema yang difilter hanya menghasilkan tabel yang ada dalam daftar yang ditampilkan:


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pendekatan untuk penyetelan indeks – Bagian 1

  2. Bagaimana cara menambahkan kolom dalam tabel di SQL?

  3. Bagaimana Cara Mengganti Nama Kolom di SQL?

  4. Mitos bahwa DROP dan TRUNCATE TABLE adalah Non-Logged

  5. Menghubungkan MS SQL ke IRI Workbench