我正在编写一个查询,必须计算在课程中注册的学生人数,我这样做的方式是这样的:
DCount("[student/course table].[Student ID]","[student/course table]","[StartDate] = #" & [Course Start Date] & "# AND Location = '" & tblCourseDetails.Location & "' AND [Course Number] = '" & [Course Number] & "'")
问题是Location可能包含撇号,这会将错误引入我的结果中。这似乎搞砸了许多事情(比如它要求我输入两次参数)。是否有任何简单的方法来绕过撇号?我想也许使用Replace()= Replace()这可能是一个非常简单的解决方案,但是如果还有其他方法,我想知道。
我不太担心SQL注入。要使用此查询,您无论如何都可以访问数据库。
这不是我的全部查询,如果您认为我应该发布,请告诉我。
答案 0 :(得分:3)
您需要添加转义字符。对于访问,我认为它是''为'。
所以找到并替换'with',你应该很高兴。
编辑:这是一个额外的撇号,而不是双引号。
Replace(tblCourseDetails.Location, "'", "''")