Database
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Database

Lọc bảng trong IRI Workbench

IRI Workbench cung cấp một số tính năng để làm việc trên nhiều bảng trong cơ sở dữ liệu. Nó bao gồm các trình hướng dẫn đến:cơ sở dữ liệu hồ sơ; phân loại cột; tập hợp con, mặt nạ và di chuyển dữ liệu; tạo dữ liệu thử nghiệm; vv

Các công cụ trong IRI Workbench có thể giúp chọn bảng nào có sẵn cho các trình hướng dẫn đó, cũng như trong một sơ đồ mối quan hệ cụ thể hoặc trong việc quét các bảng để tìm các mẫu hoặc bộ sưu tập các giá trị nhạy cảm. Với quá nhiều bảng trong cơ sở dữ liệu, có thể quá tải để trực quan hóa, chọn và quét tất cả dữ liệu và siêu dữ liệu. Một giải pháp cho vấn đề quá tải dữ liệu này là lọc các bảng hiển thị tại bất kỳ thời điểm cụ thể nào.

Bộ lọc

Việc làm việc với các bộ bảng nhỏ hơn cùng một lúc sẽ dễ dàng hơn. Thông thường, một vài trăm bảng liên quan cùng một lúc là một số tiền hợp lý. May mắn thay, có một cơ chế trong IRI Workbench để giới hạn danh sách các bảng được hiển thị bằng cách sử dụng một bộ lọc.

Các bảng được lọc ra sẽ bị loại trừ khỏi danh sách trong Data Source Explorer, dạng xem chính trong cấu trúc cơ sở dữ liệu. Chúng cũng không xuất hiện trong danh sách lựa chọn trong trình hướng dẫn và được bỏ qua trong quá trình quét dữ liệu trên toàn lược đồ, tăng tốc độ phân loại dữ liệu khó tìm. Giảm số lượng bảng xuống một số tập hợp hợp lý, với lượng dữ liệu có thể quản lý được, giúp người dùng dễ dàng tập trung vào công việc đang làm hơn. Có thể tạo nhiều cấu hình kết nối để chỉ hiển thị những bảng liên quan đến một nhiệm vụ cụ thể.

Lọc đơn giản theo tên bảng là một tính năng tích hợp của dự án Nền tảng công cụ dữ liệu Eclipse (DTP), được sử dụng để truy cập cơ sở dữ liệu trong IRI Workbench. Tuy nhiên, nó chỉ có thể được sử dụng để chỉ định tên bảng có hoặc không, bắt đầu bằng, chứa hoặc kết thúc bằng một số chuỗi ký tự nhất định. Đôi khi cần phải có một cách tiếp cận phức tạp hơn.

DTP cũng cho phép danh sách các tên bảng được chọn để bao gồm hoặc loại trừ, trên cơ sở mỗi lược đồ. Điều này liên quan đến việc tải tất cả các tên bảng vào một trang hướng dẫn, sau đó áp dụng lựa chọn dấu kiểm cho tất cả các tên bảng sẽ được bao gồm hoặc loại trừ. Điều này hoạt động tốt đối với số lượng bảng nhỏ, nhưng nhanh chóng trở nên không thể quản lý được khi danh sách bảng tăng lên hàng nghìn, hoặc thậm chí hàng chục nghìn.

Có một công việc tương đối dễ dàng cho phép chọn bảng theo tên, dựa trên danh sách bên ngoài do người dùng cung cấp. Danh sách này có thể được tạo bởi một công cụ bên ngoài hoặc do kết quả của một truy vấn SQL. Chẳng hạn, bài đăng này sẽ hiển thị từng bước cách thực hiện điều này.

Chuẩn bị danh sách bảng

Nhiều phương pháp truy vấn khác nhau có thể được sử dụng để xây dựng danh sách bảng. Một phương pháp hữu ích là lọc ra tất cả các bảng không có hàng dữ liệu nào. Tuy nhiên, trong ví dụ cụ thể này, một truy vấn SQL sẽ được sử dụng để trích xuất danh sách các bảng để đưa vào bộ lọc dựa trên sự khớp với tên bảng. Danh sách các bảng được chọn sẽ ngắn để làm cho ví dụ dễ theo dõi hơn. Kỹ thuật tương tự sẽ hoạt động để lọc các bảng dựa trên một danh sách dài hơn nhiều.

Các bảng quan tâm trong ví dụ này có hai định dạng, chúng bắt đầu bằng chữ D, theo sau là bất kỳ ký tự nào, sau đó là dấu gạch dưới hoặc chúng bắt đầu bằng chuỗi “IRI_”. Sau đó, một trong hai mẫu có thể được theo sau bởi bất kỳ số ký tự bổ sung nào.

Dấu gạch dưới được chọn cố ý làm ký tự quan tâm, bởi vì trong ngôn ngữ truy vấn có cấu trúc (SQL), dấu gạch dưới đại diện cho một ký tự đại diện duy nhất. Do đó, việc sử dụng dấu gạch dưới trong biểu thức bộ lọc DTP hoặc câu lệnh SQL là không đơn giản.

Ví dụ này dựa trên cơ sở dữ liệu Oracle và sẽ chỉ ra cách thoát ký tự gạch dưới để nó có thể được sử dụng theo nghĩa đen trong mệnh đề where của một truy vấn. Truy vấn sẽ tạo ra một danh sách bảng phù hợp với các tiêu chí trên:

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

Lưu ý việc sử dụng dấu gạch chéo ngược để thoát khỏi ký tự gạch dưới ở những nơi mà nó nên được hiểu theo nghĩa đen. Truy vấn này có thể được thực thi từ SQL Scrapbook trong IRI Workbench. Kết quả sẽ được hiển thị trong Kết quả SQL cửa sổ xem. Với con trỏ trong trình chỉnh sửa tệp SQL Scrapbook, nhấp chuột phải vào menu ngữ cảnh và chọn Thực thi tất cả .

Truy vấn cũng sẽ cần được chạy riêng cho bất kỳ lược đồ nào khác (CHỦ SỞ HỮU) cần danh sách bảng được lọc. Kết quả truy vấn cho các lược đồ khác nhau sẽ được giữ riêng biệt và được xử lý theo cách tương tự.

Kết quả sẽ có thể xem được trên Kết quả 1 trong Kết quả SQL lượt xem. Từ trình đơn ngữ cảnh của chế độ xem đó, hãy chọn Xuất> Kết quả Hiện tại . Trong hộp thoại tiếp theo, xuất kết quả vào thư mục dự án trong không gian làm việc dưới dạng tệp có định dạng CSV.

Danh sách bảng vào Tệp nhập cấu hình kết nối

Eclipse DTP cung cấp một cơ chế để nhập và xuất một hoặc nhiều cấu hình kết nối cơ sở dữ liệu từ hoặc đến một tệp XML được xác định đặc biệt. Quy trình ở đây trước tiên sẽ là chuẩn bị tệp CSV để chèn vào tệp nhập, sau đó xuất cấu hình kết nối sẽ được lọc và cuối cùng là sửa đổi tệp xuất với danh sách tên bảng làm điều kiện lọc.

Mở tệp dữ liệu CSV trong trình soạn thảo văn bản IRI Workbench. Tệp CSV sẽ không được định dạng chính xác theo cách cần thiết. Đầu tiên, xóa hàng đầu tiên có tiêu đề cột. Tiếp theo, các tên bảng cần được đóng khung bằng dấu ngoặc kép thay vì dấu ngoặc kép và dấu phẩy phải phân tách từng tên.

Nhấn Ctrl + F để hiển thị Tìm / Thay thế hộp thoại. Nhập các mẫu sau cho F ind: ^ ”(. *)” $ R e địa điểm với: ‘\ 1’, và chọn Thông thường e x áp lực lựa chọn. Nhấn nút Thay thế A ll và sau đó lưu tệp. Tệp danh sách bảng hiện đã sẵn sàng để sử dụng trong tệp nhập.

Bước tiếp theo là chuẩn bị xuất cấu hình kết nối cơ sở dữ liệu mà không áp dụng bộ lọc tên bảng. Nút xuất cấu hình kết nối nằm trên Trình khám phá nguồn dữ liệu xem thanh công cụ. Nó trông giống như một cái rổ với một mũi tên hướng lên và sang phải. Đặt dấu kiểm bên cạnh cấu hình kết nối cần bộ lọc và chỉ định tên tệp có phần mở rộng .xml trong không gian làm việc của dự án. Ngoài ra, hãy nhớ bỏ chọn Mã hóa nội dung tệp trước khi lưu tệp.

Mở tệp xuất XML trong IRI Workbench. Nhấp vào Nguồn ở cuối cửa sổ trình soạn thảo XML. Nhấn Shift + Ctrl + F để định dạng XML thành nhiều dòng, giúp chỉnh sửa dễ dàng hơn. Gần trên cùng, ngay bên trong hồ sơ , là một dòng có các thuộc tính id tên .

Truy cập một trang web như https://www.guidgen.com/ và tạo một GUID mới để thay thế giá trị trong id thuộc tính. Chỉnh sửa tên để thêm từ “đã lọc” hoặc một số chỉ báo khác sẽ xác định cấu hình kết nối mới.

Dưới đây là hình ảnh trước và sau của cấu hình kết nối mẫu:

Trước:

Sau:

Tiếp theo, tìm dòng có:

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

Nếu đã có các phần tử bổ sung bên trong thẻ, điều đó có nghĩa là đã có các bộ lọc được áp dụng cho các lược đồ trong cấu hình kết nối. Chúng có thể được giữ nguyên và bộ lọc bảng mới được chèn cho các lược đồ bổ sung.

Nếu không, các thuộc tính cấu hình kết nối có thể được chỉnh sửa để loại bỏ chúng trước khi xuất lại. Dòng trên phải được thay thế bằng dòng sau:

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

Quay lại tệp dữ liệu CSV đã chỉnh sửa với danh sách các bảng. Chọn tất cả văn bản và sao chép nó vào khay nhớ tạm. Quay lại tệp XML và dán trực tiếp nội dung khay nhớ tạm vào giữa các dấu ngoặc đơn trong văn bản ngay phía trên. Lưu ý rằng nếu tên giản đồ (CHỦ SỞ HỮU) nằm trong thuộc tính , nó phải được thay đổi để khớp với tên của lược đồ đang được lọc.

Nếu có thêm các lược đồ với danh sách bảng, hãy lặp lại các bước để thêm thuộc tính bổ sung các thẻ. Nếu danh sách bảng nên được loại trừ thay vì được bao gồm, hãy chèn từ khóa KHÔNG phía trước từ IN . XML kết quả trong ví dụ đơn giản này được hiển thị bên dưới. Trong một cơ sở dữ liệu phức tạp hơn, có thể có hàng nghìn dòng tên bảng. Khi tất cả các chỉnh sửa hoàn tất, hãy chọn Tệp> Lưu dưới dạng… và lưu tệp dưới một tên mới.

Nhập cấu hình kết nối đã lọc

Tệp XML cấu hình kết nối được lọc mới được tạo có thể được nhập, tạo một bản sao mới của cấu hình đã xuất, với tính năng lọc được áp dụng. Nút nhập cấu hình kết nối nằm trên Trình khám phá nguồn dữ liệu xem thanh công cụ, ngay bên trái của nút xuất. Nó trông giống như một cái rổ có mũi tên hướng xuống và sang phải. Duyệt đến tệp XML đã được sửa đổi với danh sách bảng. Nếu hồ sơ có cùng tên đã tồn tại, hãy chọn hộp để ghi đè hồ sơ đó.

Cuối cùng, mở cấu hình kết nối và điều hướng đến lược đồ đã được lọc dẫn đến chỉ những bảng có trong danh sách được hiển thị:


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kết nối cơ sở dữ liệu hoặc lỗi xác thực với loại có thể di chuyển

  2. Phỏng vấn Oren Eini của RavenDB về quản lý cơ sở dữ liệu, phân tích và bảo mật

  3. Làm thế nào để có được ngày cuối cùng của tháng trong T-SQL

  4. Bí mật của Dominoes, hoặc Mô hình dữ liệu trò chơi Domino

  5. Lưu trữ tệp trong cơ sở dữ liệu SQL bằng FILESTREAM - Phần 2