DateTime日期比较之sql语句有关问题?

DateTime日期比较之sql语句问题?????????????????????
我想把过了保质期的产品从数据库中读出来并显示,相应的sql语句如下:
VB.NET code
Dim selectSql As String = "select * from drug where 失效日期<=" + DateTime.Now.ToShortDateString()


注:相应的数据库中的字段为DateTime类型,我往数据库中插入了一条过了保质期(即失效日期小于系统当前日期)的产品记录,可是结果查询时,输出的过期产品却为空。日期类型比较可以用<=号,看msdn字符串貌似没有该比较方法。

另我尝试把DateTime.Now.ToShortDateString()替换为DateTime.Now,运行时则提示语法错误。

sql改为以下:
VB.NET code
Dim selectSql As String = "select * from drug where 失效日期<=" + DateTime.Now.ToString("yyyy-MM-dd")
查询结果依然为空。急等楼下高手给出正确sql!

------解决方案--------------------
VB.NET code

Dim selectSql As String = "select * from drug where 失效日期<=’" + DateTime.Now.ToShortDateString()+”‘“

------解决方案--------------------
Dim selectSql As String = "select * from drug where 失效日期<=#" + DateTime.Now.ToShortDateString()+”#“

我记得好像日期是用#号括起来的