Maison > base de données > tutoriel mysql > Comment convertir un schéma MySQL en GitHub Wiki Markdown à l'aide de procédures stockées ?

Comment convertir un schéma MySQL en GitHub Wiki Markdown à l'aide de procédures stockées ?

DDD
Libérer: 2024-11-26 20:52:09
original
374 Les gens l'ont consulté

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

Comment convertir un schéma MySQL en GitHub Wiki Markdown

Défi :

Exporter un MySQL schéma de base de données au format markdown pour la documentation à des fins.

Solution :

Utiliser deux procédures stockées pour accomplir cette tâche :

Première procédure stockée (describeTables_v2a) :

Cette procédure extrait les informations de schéma de la base de données spécifiée, les prépare et les stocke dans tables basées sur une session.

Deuxième procédure stockée (Print_Tables_Like_Describe) :

Cette procédure génère une sortie ressemblant à l'instruction DESCRIBE de MySQL pour toutes les tables de la zone spécifiée. base de données.

Utilisation :

  1. Transmettez la base de données sur laquelle faire l'objet d'un rapport en tant que paramètre à décrireTables_v2a.
  2. Facultativement, spécifiez s'il faut supprimer les données de session et s'il faut appeler automatiquement Print_Tables_Like_Describe.
  3. Si l'appel automatique est activé, la sortie sera générée et affichée.
  4. Si l'appel automatique est désactivé, appelez Print_Tables_Like_Describe avec le numéro de session obtenu à l'étape 1 pour générer le sortie.

Exemple :

SET @theOutVar =-1; -- A variable used as the OUT variable below

-- Call describeTables_v2a with auto-calling enabled
call Reporting101a.describeTables_v2a('stackoverflow', @theOutVar, false, true);
Copier après la connexion

Sortie :

La sortie sera similaire à ce qui suit :

+--------------------------------------------------------------------------------------------+
|                                                                                            |
+--------------------------------------------------------------------------------------------+
| course                                                                                         |
| +------------+--------------+------+-----+---------+-------------------+
| | Field      | Type         | Null | Key | Default | Extra            |
| +------------+--------------+------+-----+---------+-------------------+
| | courseId   | int(11)      | NO   | PRI |         | auto_increment   |
| +------------+--------------+------+-----+---------+-------------------+
| | deptId     | int(11)      | NO   | MUL |         |                  |
| +------------+--------------+------+-----+---------+-------------------+
| | courseName | varchar(100) | NO   |     |         |                  |
| +------------+--------------+------+-----+---------+-------------------+
|                                                                                              |
| dept                                                                                           |
| +----------+--------------+------+-----+---------+-------------------+
| | Field    | Type         | Null | Key | Default | Extra            |
| +----------+--------------+------+-----+---------+-------------------+
| | deptId   | int(11)      | NO   | PRI |         | auto_increment   |
| +----------+--------------+------+-----+---------+-------------------+
| | deptName | varchar(100) | NO   |     |         |                  |
| +----------+--------------+------+-----+---------+-------------------+
|                                                                                              |
| scjunction                                                                                     |
| +------------+---------+------+-----+---------+-------------------+
| | Field      | Type    | Null | Key | Default | Extra            |
| +------------+---------+------+-----+---------+-------------------+
| | id         | int(11) | NO   | PRI |         | auto_increment   |
| +------------+---------+------+-----+---------+-------------------+
| | studentId  | int(11) | NO   | MUL |         |                  |
| +------------+---------+------+-----+---------+-------------------+
| | courseId   | int(11) | NO   | MUL |         |                  |
| +------------+---------+------+-----+---------+-------------------+
| | term       | int(11) | NO   |     |         |                  |
| +------------+---------+------+-----+---------+-------------------+
| | attendance | int(11) | NO   |     |         |                  |
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal