你如何评论MS访问查询?

时间:2008-10-31 13:26:05

标签: ms-access ms-office

如何向MS Access Query添加注释,以提供其操作说明?

添加后,如何以编程方式检索此类评论?

10 个答案:

答案 0 :(得分:28)

我决定在Where条款中添加条件,该条款始终评估为true,但允许编码人员找到您的评论。

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

最后一行总是评估为true,因此它不会影响返回的数据,但允许你为下一个人留下评论。

答案 1 :(得分:12)

无法向“普通”访问查询添加注释,即mdb中的QueryDef,这就是为什么许多人建议在表中存储查询的sql。

答案 2 :(得分:11)

注意:使用Access 2003确认,不了解早期版本。

对于MDB中的查询,您可以右键单击查询设计器(表空间中的任何位置),从上下文菜单中选择“属性”,然后在描述中输入文本属性。

你只限于256个字符,但总比没有好。

您可以使用以下内容以编程方式获取描述:

Dim db As Database
Dim qry As QueryDef

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

Debug.Print qry.Properties("Description")

答案 3 :(得分:4)

我知道这个问题已经很老了,但我想补充几点,奇怪地省略了:

  1. 您可以右键单击容器中的查询,然后单击属性,并将其填入您的说明中。您以这种方式输入的文本也可以在设计视图中的描述属性
  2. 中访问
  3. 每个字段也可以记录。只需确保属性窗口处于打开状态,然后单击要记录的查询字段,并填写说明(就在太少知道的Format属性上方)
  4. 有点令人遗憾的是,没有产品(我知道)会记录这些查询字段的描述和表达。

答案 4 :(得分:3)

您可以按如下方式向MSAccess查询添加注释:在查询中创建虚拟字段。不优雅但是自我记录并包含在查询中,这使得它成为源代码控制更加可行!杰尔就是一个例子。进入SQL视图并添加虚拟字段(您也可以从设计视图中执行):

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

运行查询:

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

注意使用“;”作为qryHISTORY字段中的字段分隔符,和“;;”作为评论的结束,使用ISO日期格式和intials,以及评论。在qryHISTORY字段中测试了最多646个字符。

答案 5 :(得分:2)

第一个答案提到了如何以编程方式获取描述属性。无论如何,如果您打算使用程序,由于查询中的注释非常复杂,而不是尝试将注释放入查询中,可能最好将它们放入程序中并使用程序来提出所有问题

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"

答案 6 :(得分:1)

如果您的查询有很多标准,那么记住每个标准的作用可能会很棘手。 我在原始表中添加了一个文本字段 - 称之为“注释”或“文档”。 然后我将它包含在查询中,并为每个条件添加注释。

需要像这样编写注释,以便返回所有相关的行。 不幸的是,由于我是一张新海报,我无法添加截图!

所以这里没有

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 ""

<>告诉查询选择与您输入的文本不相等的行,否则它只会选择文本等于您的评论的字段,即无:!

“”将您的评论用引号括起来

OR是Null OR“”告诉您的查询在评论字段中包含任何没有数据的行,否则它不会返回任何内容!

答案 7 :(得分:1)

我已经在上面@Dan 的回答中使用该方法五年了,现在意识到有一种类似的方法允许在相关代码旁边添加注释,而不是在 WHERE 子句中分开:

可以使用 iif() 在域代码中添加注释。例如,如果字段代码是:

A / B

然后可以这样评论:

iif("Comment: B is never 0." = "", "", A / B)

iif(false, "Comment: B is never 0.", A / B)

iif(0, "Comment: B is never 0.", A / B)

就像 Dan 的解决方案一样,它很笨拙,但那是 SQL 的错。

答案 8 :(得分:0)

如果您尝试将常规注释添加到整个对象(查询或表等)。

访问2016 转到导航窗格,突出显示对象,右键单击,选择对象/表格属性,在说明窗口中添加注释,即库存“表格上次最后更新05/31/17”

答案 9 :(得分:0)

在查询设计中:

  • 添加一列
  • 在字段
  • 中输入您的评论(引号)
  • 取消选中显示
  • 排序。

注意:

如果您不排序,该字段将被访问权删除。因此,请确保您已取消选中显示并对列进行排序。