【问题标题】:SQL what does & in where clause mean?SQL where子句中的&是什么意思?
【发布时间】:2015-02-22 05:17:48
【问题描述】:

这段代码对吗:

"SELECT * FROM dataTable WHERE Datee Between '#" & textStartDate.Text & "# AND #" & textEndDate.Text & "#'"      

这是什么意思,# 有人可以告诉我吗? 我正在使用vb和access

【问题讨论】:

  • 如果您确实在使用 VB.NET(而不是 VB6/VBA),请考虑使用interpolated strings。更重要的是,为避免 SQL 注入并避免将值格式化为与 SQL 兼容的格式,请考虑在 SQL 语句中使用参数。

标签: sql vb.net date ms-access


【解决方案1】:

和号“&”用于连接。

之前

"SELECT * FROM dataTable WHERE Datee Between '#" & textStartDate.Text & "# AND #" & textEndDate.Text & "#'"  

之后

"SELECT * FROM dataTable WHERE Datee Between '#" & textStartDate.Text & "#' AND  '#" & textEndDate.Text & "#'" 

between 语句缺少“'”引号来括住日期值。

编辑

如何向非日期 sql 查询添加通配符。此代码在变量的两侧都有通配符。

...WHERE SomeField like  '*" & textWeAreSearchingFor & "*'"

以下是有关如何查询日期日期类型的其他示例。

...WHERE Datee >= '#" & textStartDate.Text & "#'"

或

...WHERE Datee < '#" & textStartDate.Text & "#'"

【讨论】:

  • 非常感谢,你能告诉我,如何从表中找到近似字符串而不是确切字符串?
  • 当然。 where somecolumn like '" & variableForLike "'
  • 那么我如何将它应用到Between?
  • 我无法测试对主要答案的最新更新。我用这篇文章来指导support.office.com/en-ie/article/…
  • WHERE SomeField like '" & textStartDate.Text & "'" 会生成一个空表,但是如果我输入确切的日期,它将返回正确的值跨度>
猜你喜欢
  • 1970-01-01
  • 2021-11-16
  • 2012-09-09
  • 2022-01-28
  • 2011-06-05
  • 2011-05-12
  • 2011-04-12
  • 1970-01-01
相关资源
最近更新 更多