web-dev-qa-db-fra.com

Comment commentez-vous une requête MS-access?

Comment peut-on ajouter un commentaire à une requête MS Access pour fournir une description de ce qu’il fait?

Une fois ajouté, comment récupérer de tels commentaires par programme?

31
Varun Mahajan

REMARQUE: Confirmé avec Access 2003, je ne connais pas les versions antérieures.

Pour une requête dans une MDB, vous pouvez cliquer avec le bouton droit de la souris sur le concepteur de requête (n'importe où dans l'espace vide où se trouvent les tables), sélectionner Propriétés dans le menu contextuel et entrer du texte dans la propriété Description

Vous êtes limité à 256 caractères, mais c'est mieux que rien.

Vous pouvez obtenir la description par programme avec quelque chose comme ceci:

Dim db As Database
Dim qry As QueryDef

Set db = Application.CurrentDb
Set qry = db.QueryDefs("myQuery")

Debug.Print qry.Properties("Description")
11
Patrick Cuff

J'ai décidé d'ajouter une condition à la clause Where qui évalue toujours la valeur true mais permet au codeur de rechercher votre commentaire.

Select
   ...
From
   ...
Where
   ....
   And "Comment: FYI, Access doesn't support normal comments!"<>""

La dernière ligne a toujours la valeur true pour ne pas affecter les données renvoyées mais vous permet de laisser un commentaire pour le gars suivant.

28
Dan

Il n'est pas possible d'ajouter des commentaires à des requêtes Access "normales", c'est-à-dire un QueryDef dans un mdb. C'est pourquoi plusieurs personnes recommandent de stocker le SQL pour les requêtes dans une table.

12
Fionnuala

Je sais que cette question est très ancienne, mais je voudrais ajouter quelques points, étrangement omis: 

  1. vous pouvez cliquer avec le bouton droit de la souris sur la requête dans le conteneur, cliquer sur Propriétés et la remplir avec votre description. Le texte que vous avez entré de cette manière est également accessible en mode Création, dans la propriété Descrption
  2. Chaque champ peut également être documenté. Assurez-vous simplement que la fenêtre des propriétés est ouverte, puis cliquez sur le champ de requête que vous souhaitez documenter, puis remplissez la description (juste au-dessus de la propriété de format trop peu connue). 

Il est un peu triste qu'aucun produit (à ma connaissance) ne documente ces descriptions et expressions de champs de requête.

4
Patrick Honorez

Vous pouvez ajouter un commentaire à une requête MSAccess comme suit: Créez un champ factice dans la requête. Pas élégant, mais il est auto-documenté et contenu dans la requête, ce qui facilite son contrôle dans le contrôle de code source Jere est un exemple. Allez dans la vue SQL et ajoutez le champ factice (vous pouvez aussi le faire en mode création):

SELECT  "2011-01-21;JTR;Added FIELD02;;2011-01-20;JTR;Added qryHISTORY;;" as qryHISTORY,  ...rest of query here...

Exécutez la requête:

qryHISTORY                           FIELD01 FIELD02 ...
2011-01-21;JTR;Added FIELD02;;2011-01-20;JTR;Added qryHISTORY;;"  0000001  ABCDEF ...

Notez l'utilisation de ";" comme délimiteur de champ dans le champ qryHISTORY et ";;" comme fin de commentaire et utilisation du format de date ISO et des initiales, ainsi que des commentaires. Vous avez testé cela avec un maximum de 646 caractères dans le champ qryHISTORY.

3
JTR

La première réponse mentionnait comment obtenir la propriété de description par programme. De toute façon, si vous voulez vous occuper du programme, étant donné que les commentaires dans la requête sont très compliqués, au lieu d’essayer de les insérer dans la requête, il est peut-être préférable de les insérer dans un programme et de les utiliser pour toutes vos requêtes.

Dim dbs As DAO.Database
Dim qry As DAO.QueryDef

Set dbs = CurrentDb
'put your comments wherever in your program makes the most sense
dbs.QueryDefs("qryName").SQL = "SELECT whatever.fields FROM whatever_table;"
DoCmd.OpenQuery "qryname"
2
Patrick Boylan

Si vous avez une requête avec beaucoup de critères, il peut être difficile de se rappeler ce que chacun fait. J'ajoute un champ de texte dans la table d'origine - appelez-le "commentaires" ou "documentation" . Ensuite, je l'inclue dans la requête avec un commentaire pour chaque critère.

Les commentaires doivent être écrits comme suit pour que toutes les lignes pertinentes soient renvoyées . Malheureusement, comme je suis une nouvelle affiche, je ne peux pas ajouter de capture d'écran!

Alors, voici sans

Field:   | Comment              |ContractStatus     | ProblemDealtWith | ...... |

Table:   | ElecContracts        |ElecContracts      | ElecContracts    | ...... |

Sort:  

Show:  

Criteria | <> "all problems are | "objection" Or |

         | picked up with this  | "rejected" Or  |

         | criteria" OR Is Null | "rolled"       |

         | OR ""

<> indique à la requête de choisir des lignes qui ne sont pas égales au texte que vous avez entré. Sinon, seuls les champs dont le texte correspond à votre commentaire sont remplis, c.-à-d. aucun!

"" mettez votre commentaire entre guillemets

OU Null OR "" indique à votre requête d'inclure toutes les lignes ne contenant aucune donnée dans le champ de commentaires, sinon elle ne renverra rien!

1
Jarad Pillemer

si vous essayez d’ajouter une note générale à l’objet global (requête ou table, etc.)

Access 2016 Aller au volet de navigation, sélectionner un objet, cliquer avec le bouton droit de la souris, sélectionner les propriétés de l’objet/du tableau, ajouter une note dans la fenêtre de description, à savoir "inventaire" dernière mise à jour du tableau le 31/05/17 "

0
mschoular

Dans la conception de la requête: 

  • ajouter une colonne
  • entrez votre commentaire (entre guillemets) dans le champ
  • décocher Afficher
  • trier en assending.

Remarque:

Si vous ne triez pas, le champ sera supprimé par accès. Donc, assurez-vous que vous avez décoché afficher et trié la colonne.

0
steveapa