Existe-t-il un moyen de joindre une métadonnée à une base de données MySQL? J'essaye d'écrire le code pour mettre à jour automatiquement le schéma de base de données chaque fois qu'une mise à niveau de code l'exige. Cela nécessite le stockage d'une seule valeur entière - la version du schéma. Je pourrais bien sûr créer une table entière pour cela, mais cela semble être trop pour un simple nombre.Joindre des métadonnées simples à une base de données MySQL
2
A
Répondre
2
Vous pouvez utiliser les commentaires de table pour stocker la version:
ALTER TABLE table1 COMMENT = '1.4';
Vous devez regex pour obtenir le commentaire de cette:
SHOW CREATE TABLE table1;
/COMMENT='(.*)'/
1
Pour répondre à la question intitulée, qui est Pour les métadonnées pour l'ensemble de la base de données et non pour les tables individuelles, vous disposez de plusieurs choix, en fonction des privilèges dont vous disposez.
La route la plus directe consiste à créer une fonction stockée, qui requiert le privilège CREATE ROUTINE
. par exemple.
mysql> CREATE FUNCTION `mydb`.DB_VERSION() RETURNS VARCHAR(15)
RETURN '1.2.7.2861';
Query OK, 0 rows affected (0.03 sec)
mysql> SELECT `mydb`.DB_VERSION();
+--------------+
| DB_VERSION() |
+--------------+
| 1.2.7.2861 |
+--------------+
1 row in set (0.06 sec)
Si vos privilèges vous limiter seulement la création de tables, vous pouvez créer une table simple et mettre les métadonnées comme valeurs par défaut. Il n'est pas nécessaire de stocker des données dans la table.
mysql> CREATE TABLE `mydb`.`db_metadata` (
`version` varchar(15) not null default '1.2.7.2861');
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW COLUMNS FROM `mydb`.`db_metadata`;
+---------+-------------+------+-----+------------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+------------+-------+
| version | varchar(15) | NO | | 1.2.7.2861 | |
+---------+-------------+------+-----+------------+-------+
1 row in set (0.00 sec)
Questions connexes
- 1. Joindre des métadonnées à l'image
- 2. Stocker des données simples dans la base de données mysql
- 3. Avantages des métadonnées d'interface dans une base de données
- 4. Caractère mysql échappant à des guillemets simples
- 5. Joindre un dictionnaire à une base de données
- 6. Connexion à une base de données MySQL
- 7. Des instructions à suivre pour concevoir un référentiel de métadonnées de base de données?
- 8. Insérer des données dans une base de données mysql distante
- 9. Joindre des tables - MySQL & PHP
- 10. ajouter des métadonnées à une définition XSD
- 11. Comment copier une table d'une base de données mysql vers une autre base de données mysql
- 12. Obtention des métadonnées de MySQL en Java
- 13. lire des guillemets et des guillemets simples à partir de la base de données Sqlite
- 14. Écrire des données simples à l'iphone sandbox?
- 15. Conception de base de données MySQL - table des relations
- 16. Comment archiver une base de données MySQL?
- 17. Joindre des données utilisateur à AXObserver
- 18. Comment joindre des données à jquery tmpl
- 19. mysql question se joindre à
- 20. Identification des correspondances manquantes dans une base de données Mysql
- 21. créer une base de données MySQL personnelle
- 22. Recherche dans une base de données mySQL
- 23. MySQL se joindre à l'aide de requêtes
- 24. Comment supprimer une base de données MySQL?
- 25. Comment enregistrer une base de données mysql?
- 26. Connexion de Java à une base de données MySQL
- 27. Ajout d'attributs de métadonnées à la table MySQL
- 28. Un problème avec une base joindre
- 29. Base de données MySQL avec ASP .NET
- 30. migration de la base de données de rails simples vers mysql
C'est parfait! Merci! – zildjohn01