Office中国论坛/Access中国论坛

标题: sql怎么用变量做查询条件 [打印本页]

作者: lovinana    时间: 2009-9-29 22:59
标题: sql怎么用变量做查询条件
Private Sub 材料名称_AfterUpdate()
  Dim STemp As String
  Dim cailiaomingcheng As String
  cailiaomingcheng = Me![材料名称]
  STemp = "SELECT * FROM 入库资料表 WHERE 材料名称 = " & cailiaomingcheng & " ORDER BY 入库日期 DESC"
  DoCmd.RunSQL STemp
End Sub

我想把材料名称等于我在文本框输入的值,用了个变量做中间量,材料名称需要等于一个带引号的文本,例如"A4纸",而红色部分实现的是不带引号的文本,所以报错,请问,怎样修改可以实现
作者: asklove    时间: 2009-9-30 08:29
WHERE 材料名称 = '" & cailiaomingcheng & "'

WHERE 材料名称 = '" & Me![材料名称] & "'
作者: lovinana    时间: 2009-10-1 08:09
我试过这个 不行 提示在DoCmd.RunSQL STemp中断 显示STemp是STemp = "SELECT * FROM 入库资料表 WHERE 材料名称 = ‘ A4纸 ’ ORDER BY 入库日期 DESC"
因为材料名称需要双引号引起 单引号不能识别 所以报错
作者: tz-chf    时间: 2009-10-1 08:47
runsql执行的是操作查询
作者: lovinana    时间: 2009-10-1 09:33
楼上的大大,那应该用什么来实现呢
作者: tz-chf    时间: 2009-10-1 11:38
没看出来想要干什么的
作者: lovinana    时间: 2009-10-1 13:05
查询出所有材料名称是我输入进文本框的材料名称的条目,以入库日期降序排列
作者: tz-chf    时间: 2009-10-1 13:53
还是没看懂,放mdb上来,我来弄。
作者: lovinana    时间: 2009-10-1 14:10
tz-chf大大,传上来了
作者: lovinana    时间: 2009-10-1 14:12
我想查出和我输入材料名称一样时间最近的一次入库,并把那次的采购单价做为本次的参考单价,这是我全部的想实现的
作者: tz-chf    时间: 2009-10-1 23:16
我简直无从下手!你做的还不如用excel画一张表格。
作者: lovinana    时间: 2009-10-2 16:47
我已经实现了 又加了引号 一共三对双引号 还是谢谢你了
作者: redstone    时间: 2009-10-9 16:34
你都没有一个查询表, 这样操作出的结果显示在什么地方呢?
作者: rower    时间: 2009-11-24 19:57
还有“操作查询”?什么意思啊




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3