2017-07-20 1 views
1

J'ai trouvé le mot-clé 'comment' dans MySQL (pas de syntaxe de commentaire comme/* * /, #)Quel est le but de 'comment' dans MySQL?

Mais je ne sais pas pourquoi il y a le mot-clé 'comment'.

S'il y a le tableau suivant, comment pourrais-je utiliser le 'commentaire'?

create table Employee(
    id int not null auto_increment, 
    create_dt date comment 'the date when employee was hired' 
    salary int comment 'salary in EUR', 
    primary key (id) 
) comment 'The employee table of company AA'; 
+0

Rédiger un commentaire pour expliquer à quoi sert la table ?! – Jens

+0

Je ne savais même pas que 'comment' était un mot-clé dans MySQL. Il semble que ce soit juste une autre façon de laisser un commentaire dans votre code SQL. Je pense que je préférerais - parce que c'est la norme ANSI, et IMO plus facile à repérer comme étant un commentaire plutôt qu'un mot-clé. –

Répondre

1

Les commentaires sont un moyen de stocker des informations pertinentes dans la base de données elle-même. Par exemple, si vous mettez un commentaire sur une colonne, il sera affiché par les commandes show create table et show full columns.

Notez que ceci est différent à ce que la plupart des gens pensent comme des commentaires dans SQL - ce sont simplement des instructions dans les scripts qui sont ignorés après avoir été analysés. Ils ne se retrouvent pas dans les métadonnées pour une récupération ultérieure.

+0

Merci. Je comprends que le mot-clé 'comment' permet d'enregistrer des informations supplémentaires sur la colonne même après l'exécution du script SQL. Ensuite, y a-t-il un moyen d'obtenir un 'commentaire de colonne' au lieu de 'nom de colonne' quand on trouve des lignes? (Je suis curieux de savoir comment choisir "salary.comment (??) from Employee where salary> 3000") – dolgom

+0

@dolgom, les métadonnées sont contenues dans 'information_schema.columns' et vous pouvez y accéder avec quelque chose comme' select table_schema, nom_table, nom_colonne, column_comment de information_schema.columns où table_schema = 'nom_schéma' et nom_table = 'nom_table''. Combiner cela avec * data * de la table elle-même aurait besoin d'une jointure croisée. – paxdiablo

+0

Merci beaucoup. @paxdiablo – dolgom