如下语句在SQL中为什么通不过?
SQL = "SELECT ID,年,月,日,发货单号,业务员,客户名称,产品名称,规格,单位,数量,单价,金额 " & _
" FROM sale " & _
" WHERE (((CDate([月] & '- ' & [日] & '- ' & [年])) Between # " & CDate(TextBox1.Text) & "# And # " & CDate(TextBox2.Text) & "#)) "
提示说CDATE是无法识别的函数名,怎么回事?
在我的SQL表内是有三个字段,“年,月,日”是分列的数字整型,而在查询时的界面上有二个日期文本框,我应该怎么改?
[解决办法]
将“年”“月”“日”三列合并成一个日期类型的列吧
[解决办法]
sql= 'SELECT ID,年,月,日,发货单号,业务员,客户名称,产品名称,规格,单位,数量,单价,金额 FROM sale WHERE convert(datetime,月+ '- '+日+ '- '+年,101) between ' ' ' & format(mm-dd-yyyy,textbox1.text) & ' ' ' and ' ' ' & format(mm-dd-yyyy,textbox2.text) & ' ' ' '
[解决办法]
Cast([月] + '- ' + [日] + '- ' + [年] as datatime)
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)
最新版本:20070212
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
[解决办法]
ACCESS和SQL的在日期使用上的语法区别是一个用#一个用 '
[解决办法]
SQL server里不认识cdate
可以用 cast([string] as datetime)
不过像文章里提到的
可以用
SQL = "SELECT ID,年,月,日,发货单号,业务员,客户名称,产品名称,规格,单位,数量,单价,金额 " & _
" FROM sale " & _
" WHERE ([月] & '- ' & [日] & '- ' & [年]) > = ' " & format(TextBox1.Text, "MM-DD-YYYY ") & " ' And ([月] & '- ' & [日] & '- ' & [年]) <= ' " & format(TextBox2.Text, "MM-DD-YYYY ") & " ' "