«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как преобразовать схему MySQL в GitHub Wiki Markdown с использованием хранимых процедур?

Как преобразовать схему MySQL в GitHub Wiki Markdown с использованием хранимых процедур?

Опубликовано в 2025-02-06
Просматривать:827

How to Convert a MySQL Schema to GitHub Wiki Markdown Using Stored Procedures?

преобразование схемы MySQL в GitHub Wiki Markdown

исходный вопрос поднял обеспокоенность по поводу экспорта схемы базы данных MySQL в формат разметки, в частности как таблицы. Чтобы решить это, подробный ответ предоставляет решение, включающее использование двух хранимых процедур. генерирует выход, который напоминает вывод описания mytable для всех таблиц в этой базе данных. Это достигает этого, используя базу данных information_schema и манипулируя результатами, чтобы обеспечить более подробный и организованный выход. Вывод хранится в таблице DestrecDatadefs базы данных Reporting101A.

Parameters:

dbname: имя базы данных, чтобы сообщить о. ] theSession: параметр out для удержания номера сеанса, назначенного для этой операции. : Логический, указывающий, автоматически ли автоматически вызовать вторую хранимую процедуру для Pretty Printing (description-like) output.

steps:
  • создает временный Таблицы для хранения промежуточных данных.
  • вставляют данные во временные таблицы из базы данных information_schema, рассматривая имена таблиц и столбцов, типы, нулельность, ключи и дополнительную информацию. С данными из временных таблиц, включая дополнительные столбцы для столбцов и максимальной длины и счетчиков для нуля, ключа, по умолчанию и дополнительных значений. ПРОИЗВОДИТЕЛЬНЫЙ ПЕРЕДНЯТЫЙ ПЕРЕВОД И добавляет его в таблицу отчетов.
  • вторая сохраненная процедура: print_tables_like_describe
Эта процедура принимает номер сеанса в качестве ввода и получает данные из таблицы отчетов. Затем он генерирует форматированный выход разметкой выход, который напоминает описанный выход Mytable, но для каждой таблицы в указанной базе данных.

Steps:

  1. итерации над рядами В таблице ReportDatadeFS извлечение необходимых данных.
  2. генерирует заголовок таблицы для каждой таблицы с именем поля, введите, нуляемость, ключ, значение по умолчанию и дополнительная информация. Данные в последовательную ширину и выравнивание.
  3. отделяет форматированные столбцы с вертикальными стержнями.
  4. возвращает форматированный выход в результате набора. :
Для использования хранимых процедур пользователь может предоставить требуемое имя базы данных и другие параметры. Вот пример использования:

set @theoutvar = -1; - переменная, используемая в качестве переменной Out ниже - Примечание: с `true` как 4-й параметр, это сделка с одним вызовом. Значит, вы закончили. Call Reporting101a.describetables_v2a ('Stackoverflow',@theoutvar, false, true); - в первую очередь используется, если 4-й параметр выше. Call Reporting101a.print_tables_like_describe (@theoutvar); - Загружает данные для более красивых результатов в формате чан. Затем он автоматически вызовет отчеты101a.print_tables_like_describe, хранящуюся с этим номером сеанса, чтобы создать довольно напечатанные выводы. Вывод будет возвращен в результате набора результатов, который может быть использован и отформатирован дальше, например, преобразование его в таблицу с форматированием на уценке. ]

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3