Деякі СКБД (наприклад, Oracle чи PostgreSQL) дозволяють описувати об'єкти бази даних шляхом присвоєння їм коментарів. Це дає адміністраторам, розробникам та користувачам спеціалізованих інструментів типу BI можливість дізнатися призначення таблиці або колонки в ній без необхідності читати документацію (або коли документація не доступна).
Різні типи баз даних дозволяють описувати різні типи об'єктів. Як правило, це таблиці, представлення та їх колонки. Деякі СКБД типу PostgreSQL також дозволяють описувати і інші типи об'єктів, такі як схеми, функції, процедури і т.д.
Ви можете працювати з описами об'єктів баз даних або використовуючи інтерфейс Database Tour, або код SQL у відповідності до документації вашої бази даних.
Робота з описами об'єктів за допомогою SQL
На жаль, кожна СКБД має власне розширення SQL для опису об'єктів бази даних. Немає спільного для всіх типів баз даних уніфікованого набору команд SQL для цього.
Ось приклад, як описати таблицю та її колонки в базах даних PostgreSQL та Oracle:
COMMENT ON TABLE detail.payment IS 'Customer Payments';
COMMENT ON COLUMN detail.payment.id IS 'Unique record id';
COMMENT ON COLUMN detail.payment.payment_amount IS 'Payment amount in US dollars';
В базах даних MySQL немає окремих команд для опису об'єктів; опис робиться за допомогою команд CREATE TABLE та ALTER TABLE:
CREATE TABLE world.cities (
`ID` int(11) NOT NULL COMMENT 'Primary key',
`Name` char(44) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'City name',
`District` char(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'District name',
`Population` int(11) NOT NULL DEFAULT 0 COMMENT 'City population',
PRIMARY KEY(`ID`)
);
ALTER TABLE world.cities COMMENT 'List of cities';
В базах даних SQL Server ми можемо описати таблицю та її колонки, використовуючи розширену властивість MS_Description. Але майте на увазі, що ви повинні використовувати різні команди для додавання, зміни або вилучення описів, і це може бути справжнім головним болем. Ось як додати розширену властивість:
-- Add table comments
EXECUTE sp_addextendedproperty
N'MS_Description'
,N'List of cities'
,N'SCHEMA'
,N'dbo'
,N'TABLE'
,N'city'
,NULL
,NULL
GO
-- Add column comments
EXECUTE sp_addextendedproperty
N'MS_Description'
,N'Primary key'
,N'SCHEMA'
,N'dbo'
,N'TABLE'
,N'city'
,N'COLUMN'
,N'id'
Робота з описами об'єктів за допомогою інтерфейсу
Database Tour полегшує роботу з описами об'єктів баз даних, надаючи уніфікований інтерфейс для цього. Крім перегляду та редагування описів, ви також можете їх використовувати в інструменті експорту та міграції даних.
Будь-ласка, зауважте, що зараз інтерфейс Database Tour вміє працювати з описами об'єктів бази даних Oracle, PostgreSQL, SQL Server та MySQL databases. Для інших типів баз даних, що підтримують описи об'єктів, вам потрібно писати і виконувати код SQL.
В Database Tour можна працювати з описами об'єктів або індивідуально (наприклад, вибравши таблицю і модифікуючи її властивості або колонку) або використовуючи спеціальний інструмент, що налаштований на роботу з усіма описами таблиць і колонок бази даних (див. нижче).
Інструмент для визначення багатьох описів
Для виклику інструменту для роботи з багатьма описами таблиць і колонок, будь-ласка, виберіть меню Інструменти | Описи об'єктів....
Тут ви спочатку завантажуєте відповідні атрибути потрібних таблиць і колонок (в т.ч. з уже існуючими описами), використовуючи набір опцій фільтрування об'єктів. Потім ви додаєте або змінюєте описи для потрібних об'єктів в зручній табличній формі.
Для колонок є можливість вибрати опис із випадаючого списку з описів до інших колонок, що мають таку ж назву. Тобто перші описи ви додаєте з нуля; далі, чим більше описів ви додасте, тим більше елементів будуть у випадаючих списках.
Допоміжний функціонал пошуку та заміни дозволяє швидко знайти потрібні об'єкти або описи і зробити масову заміну в разі потреби.
Описи можна застосувати до об'єктів або безпосередньо з цього вікна, або згенерувати відповідні команди SQL для цього. Згенерований скрипт (або скрипти) SQL потім можна буде застосувати і в поточній базі даних, і в інших базах даних з подібною структурою.
По завершенню роботи, можна експортувати всі рядки даної таблиці до кількох файлових форматів типу Excel, HTML, CSV і т.д. Експортовані описи потім можуть бути завантажені, наприклад, до вашої системи документації.
Див. також: