Спецификация PowerDesigner для физического моделирования баз данных

база данных

справочная информация

При использовании PowerDesigner (далее PD) для проектирования баз данных нет фиксированной спецификации. Но цель проектирования базы данных состоит в том, чтобы ускорить обмен информацией между командами, поэтому удобочитаемость проектной документации очень важна. Только когда команда использует единую стандартную спецификацию для проектирования, можно обеспечить высокую удобочитаемость документа и повысить эффективность совместной работы команды.

Эта статья ставит некоторые требования, опыт, навыки на практике, могут использоваться в качестве стандарта моделирования данных для небольших команд.

Основываясь на этих спецификациях, группы моделирования могут:

  • Моделирование баз данных на основе модульного мышления;
  • Максимальное повторное использование стандартных типов полей и часто используемых полей;
  • Оптимизировать компоновку и отображение объектов в интерфейсе для облегчения набора текста и печати;
  • Быстро экспортировать проектные документы базы данных;

УведомлениеPD может проектировать различные модели, содержание этой статьи действительно только для проектирования физической модели (модель физических данных).

Модульная структура

Как правило, неопытные разработчики моделей включают все таблицы на один график. Когда количество таблиц превышает 30, все таблицы складываются вместе и выглядят очень беспорядочно и сложно, что серьезно влияет на читабельность pdm.

Ниже плохой пример

a3feba277016f50e4ec1ae9d4f2d0d6a

Чтобы улучшить удобочитаемость pdm, мы должны использовать модульную структуру для организации pdm, разделить всю систему на несколько модулей с низким уровнем связи в соответствии с их зависимостями, каждый модуль разработан независимо и логически управляется независимо. Модульная структура позволяет нам четко понять, какие модули имеют какие таблицы и каким модулям принадлежит текущая таблица.

Согласно спецификациям, которые мы используем на практике, часто используемые модули включают

  • Пакет: может содержать несколько графиков, и его основная функция — логическое разделение системы;
  • Диаграмма. По сути, это холст, показывающий взаимосвязь между таблицами;
  • Домен (Domain): настройки типа мультиплексированного поля;
  • Шаблон документа: Быстро создавайте проектные документы;

Образец показан ниже

8df78824a42969bbd3762c7cdd067d27

повторно использовать объект

Реальный случай, ранний идентификационный номер состоял из 15 цифр, а позже был изменен на 18 цифр. Многие таблицы в системе имеют это поле ID, при изменении длины необходимо модифицировать соответствующий тип поля в каждой таблице, что легко пропустить.

Чтобы избежать этой проблемы, максимально повторно используйте существующие объекты. Например, длина этого удостоверения личности, у нас есть два метода повторного использования

  1. Атрибуты типов повторно используемых полей
  2. повторно использовать все поле

поле типа поля

использовать заранееплощадьОпределите общие типы полей и используйте их непосредственно при разработке полей таблицы, что может снизить рабочую нагрузку при изменении.

В процессе определения поля вы можете не только указать такие атрибуты, как тип, длина, ненулевое значение и значение по умолчанию, но также можете ограничить содержимое поля. Как показано ниже

042d76b12ac75b34c9835aca1cbf6065
97e3d032d9049b5e9eb619fc623fa384

При разработке поля таблицы вы можете напрямую ссылаться на поле на странице свойств поля, как показано ниже.

91ad335db34b0534b3cb1f7fb418a0c2

поле

Если вам нужно повторно использовать все поле, вам нужно только скопировать поле во время разработки таблицы. Копировать здесь не Ctrl-C/V, правильное действие

  • Add ColumnsСкопируйте копию исходного поля, имя черное
  • Replicate ColumnsОтносится к исходному полю, имя выделено серым цветом

Как показано ниже

7a1b8473309a57d7ee02a4ab84ccd501

ПримечаниеЧтобы облегчить мультиплексирование полей, вы можете заранее сохранить общие общедоступные поля в выделенной таблице (вы также можете установить эту выделенную таблицу без автоматического создания DDL), в противном случае ссылки.

Ассоциация первичного внешнего ключа

Поскольку подтаблица базы данных и подбаза данных становятся все более распространенными, больше не требуется использовать первичные и внешние ключи в базе данных бизнес-систем (учитывая согласованность данных, рекомендуется использовать их как можно больше).

Но в документе pdm должна быть разработана первичная связь внешнего ключа., в противном случае pdm не сможет отразить взаимосвязь таблицы и станет формальным документом, не имеющим никакого эффекта.

Использование замены для стола (Ярлык)

Чтобы поддерживать удобочитаемость, мы будем отображать очень релевантные таблицы на диаграмме и даже искусственно разделять несколько областей на диаграмме для отображения разных тем.

Иногда это происходит:

  • Таблица должна ссылаться на таблицу в другом пакете/карте;
  • Одна и та же таблица должна отображаться в нескольких областях графика;

Мы используем Shortcut для решения проблемы, связанной с тем, что таблица должна отображаться в нескольких местах.

Сначала нажмите Ctrl-C для исходной таблицы, затем выберите «Вставить как ярлык», как показано ниже.

6bcd1a8ac8ced27a43381d2973eba574
8ed81b97498edeb00ced713d8e57f4c3

предупреждатьКогда вам нужно удалить объект с несколькими аватарами, вы должны решить, удалять ли этот аватар или удалить весь объект. Операция удаления аватара выглядит следующим образом

e17213a29872724ad9b8f2bc05ad9d82

Форма первичного внешнего ключа (физический/логический)

Учитывая особые сценарии в реальной работе, наше требование состоит в том, чтобы убедиться, что в документе pdm есть отношения между первичным и внешним ключами, но не может быть никаких первичных и внешних ключей при создании DDL для создания таблицы. То есть существует логическая связь между первичным и внешним ключами.

Мы можем генерировать первичные и внешние ключи по-разному, как показано ниже.

70b734a9db8638397288ab89e134c6a5

1 и 2 на приведенном выше рисунке используют ссылку для создания связи между таблицами, но 2 является логическим внешним ключом. Преимущество использования Reference заключается в том, что при соединении двух таблиц PD автоматически генерирует поле внешнего ключа дочерней таблицы. Например, поле vihicle_key двух таблиц t_phy_fk/t_logic_fk создается автоматически.

Разница между ними заключается в том, чтобы выбрать, генерировать ли DDL этого внешнего ключа в свойствах ссылки, как показано ниже.

2d8bad857ede379d5c789ffad5005204

Глядя на DDL создания двух таблиц, логический внешний ключ не появится в окончательном сценарии базы данных. Как показано ниже

2fda65a2ced71aecb0fd03bf96297b12

还有另外一种表示表关联关系的办法,就是使用Link来连接两张表(最上面图中标号3的虚线)。这种方式不是真正的主外键关联,不生成DDL,不能自动生成外键字段,并且Properties也不能确定哪些字段是关联字段。如果疏忽就可能遗漏了字段。如标号3的场景中,t_link_fk这张表就遗漏了vehicle_key这个字段!

предложениеИспользуйте ссылку для создания внешних ключей и выберите, следует ли создавать DDL в соответствии с логическими/физическими требованиями.

Методы пакетного изменения эталонных свойств следующие:

627a4bdbdee650bb22cc1501adb22c28

Оптимизированное отображение интерфейса

В конфигурации по умолчанию, когда мы создаем широкую таблицу со многими полями, будут отображаться все поля этой таблицы.Размер таблицы на окончательном изображении отличается, и качество чтения очень плохое, как показано на следующем рисунке.

51ae1e8720c85606aabb34d10b75d96a

На самом деле цель использования графа — быстро разобраться в отношениях между таблицами, а не заботиться о каждом конкретном поле. Итак, мы настраиваем параметры, чтобы показать несколько полей.

Щелкните правой кнопкой мыши пустую область изображения и выберите «Параметры отображения» во всплывающем меню, как показано на следующем рисунке.

c0fc4360352ebdbc8a2034d4881c8c06
6495188c227faf2720f030e85a21235f

Рисунок после настройки выглядит следующим образом

d40f5fea1dfd417eb1a28afa7488f952

предложениеВ процессе проектирования, разделив несколько изображений, попытайтесь контролировать содержимое одного изображения на одном экране.

Экспорт таблицы DDL

После разработки pdm нам нужно сгенерировать таблицы базы данных и другие объекты в соответствии с pdm. PD предоставляет два разных метода создания базы данных на основе pdm.

  • Экспортировать DDL и выполнить его в базе данных;
  • Подключиться напрямую к базе данных для выполнения DDL;

Согласно нормам SCM, мы должны использовать для экспорта DDL. В сочетании с моделированием модульной структуры база данных использует инструменты непрерывной интеграции, мы можем точно контролировать все объекты базы данных. Мы продолжим интеграцию подробно в других статьях, в этой статье только кратко объясняется, как экспортировать, чтобы соответствовать требованиям операторов DDL.

Настроить СУБД

Откройте страницу предварительного просмотра таблицы, вы можете увидеть оператор создания таблицы для текущей таблицы, как показано ниже.

1621b173eeed9f5ae4497b1bc190c800

PD предоставляет функции генерации синтаксиса для общих баз данных, которые мы можем настроить в соответствии с реальными потребностями. Конфигурация по умолчанию уже может удовлетворить повседневные потребности, и обычным пользователям не рекомендуется ее настраивать. Пользовательская функция показана ниже.

f1a81178a8d32dee941e722125e3014c

Пакетный экспорт DDL

Хотя возможно копирование DDL в предпросмотре отдельной таблицы, чаще нам требуется пакетная обработка всех объектов в целом пакете, диаграмме, PDM. В это время вам нужно использовать функцию создания базы данных, как показано ниже.

eac04b17a6d4eb3831f98c53a8cb0f93

Наиболее важным шагом здесь является установка и выбор

  • Настройки включают, помимо прочего, шрифты, заглавные буквы и физические параметры;
  • Выберите объекты базы данных для включения; На обоих этих шагах можно повторно использовать часто используемые операции и конфигурации, сохраняя файлы конфигурации. Сочетание инструментов и процессов SCM может лучше выполнять роль этой функции.

Установите параметры, как показано ниже

cb0401888685009211cb269eed04ca31

Выберите объект, как показано ниже

1a8d9a2ea01e3c7f3173b48f650e521a

Вы можете предварительно просмотреть файл перед экспортом, как показано ниже.

e344ff173d81ddf47a25b193ec0ded00

Формировать проектную документацию

Хотя удобочитаемость pdm может быть очень хорошей, в некоторых особых случаях нам все еще нужны данные моделирования базы данных в формате Word или HTML (обычно известный как словарь данных). PD предоставляет настраиваемый механизм генерации документов, и мы используем только самые основные части для удовлетворения требований.

Создайте новый шаблон отчета и настройте содержимое, как показано ниже.

482685838f6af696765134f1fbd3239e
5508a1cfa7698b6834b59f0019bd3e2a

Создайте отчет, как показано ниже

4016349232368051de8c48ec799d63e4

Отчет в формате HTML, вы можете перейти к таблице через график, как показано ниже.

5f7b57bada3329d4273524cf8204375f

Отчет в формате Word, как показано ниже

10b9049f958585471da3af5dc7360adc