vbscript中数据库日期查询的错误
在客户端查询数据时,查询日期时,查询不到数据,数据为空
数据库为MSSQL
客户端语言用vbscript
代码如下:
dim rs
rs = "Driver={SQL Server};Server=******;UID=**;PWD=******;Database=******"
Dim dlj
Set dlj = CreateObject("ADODB.Recordset")
dlj.ActiveConnection = rs
dlj.Source = "SELECT * FROM dbo.表 where 日期='2004-11-24'"
dlj.CursorType = 3
dlj.CursorLocation = 2
dlj.LockType = 3
dlj.Open()
无任何错误提示,但该语句在SQL中能通过,只是查询出结果为空,各位看看错在哪儿??
问题点数:100、回复次数:14Top
1 楼zorou_fatal(The world and system is even)回复于 2004-12-01 16:53:49 得分 20
Try
SELECT * FROM dbo.表 where datediff(d,'2004-11-24',日期)=0Top
2 楼shihuawei(混混)回复于 2004-12-01 16:56:26 得分 0
楼上地这个也不行哦
SELECT * FROM dbo.表 where datediff(d,'2004-11-24',日期)=0Top
3 楼shihuawei(混混)回复于 2004-12-01 17:00:36 得分 0
把代码贴全了,大家看看
<%
dim sql
if Request.Form("t1")<>"" then sql = sql & "and 生产日期>='" & Request.Form("t1") & "'"
if Request.Form("t2")<>"" then sql = sql & "and 生产日期<='" & Request.Form("t2") & "'"
if Request.Form("d1")<>"" then sql = sql & "and 品种='" & Request.Form("d1") & "'"
if Request.Form("d2")<>"" then sql = sql & "and 生产线='" & Request.Form("d2") & "'"
response.write sql
%>
<script language="vbscript">'连接数据库
dim sql1
sql1="<%=sql%>"
msgbox sql1
dim rs
rs = "Driver={SQL Server};Server=10.10.1.49;UID=sa;PWD=791126;Database=tabqcdsback"
Dim dlj
Set dlj = CreateObject("ADODB.Recordset")
dlj.ActiveConnection = rs
dlj.Source = "SELECT * FROM dbo.成品 where 品种<>'' " & sql1
dlj.CursorType = 3
dlj.CursorLocation = 2
dlj.LockType = 3
dlj.Open()
看看,就这个组合查询,一段选择日期就查询不出来,为空,那个地方代码错了地说!Top
4 楼alern_zyb(爱嚼口香糖的程序员)回复于 2004-12-01 17:02:22 得分 20
dlj.Source = "SELECT * FROM dbo.表 where 日期=cdate('2004-11-24')"Top
5 楼shihuawei(混混)回复于 2004-12-01 17:04:23 得分 0
alern_zyb(爱嚼口香糖的程序员)
你的代码也不行地说!
错误提示:cdate不是可以识别的函数名Top
6 楼yizia(椅子)回复于 2004-12-01 17:07:20 得分 30
因为数据类型是datetime,所以应用下面的方法
WHERE datediff(day,'2004-10-15', 日期字段名)=0Top
7 楼comszsoft(星星点灯)回复于 2004-12-01 17:08:02 得分 0
rs好像没有open阿,连接数据库能成功吗?Top
8 楼yizia(椅子)回复于 2004-12-01 17:09:31 得分 0
数据库是mssql还是mysql阿?Top
9 楼shihuawei(混混)回复于 2004-12-01 17:10:46 得分 0
comszsoft(星星点灯) :数据库能连接成功,如果不选日期的话就没问题,选日期就不行了地说
yizia(椅子):数据库是MSSQLTop
10 楼shihuawei(混混)回复于 2004-12-01 17:12:27 得分 0
yizia(椅子):你的代码也不行哦
dlj.Source = "SELECT * FROM 成品 WHERE datediff(day,'2004-10-15', 生产日期)=0"
Top
11 楼yizia(椅子)回复于 2004-12-01 17:12:31 得分 0
to comszsoft(星星点灯)
打你,惩罚你去看ado.chm,微软网站的psdk中包括
Top
12 楼shihuawei(混混)回复于 2004-12-09 09:32:41 得分 0
还没有老大帮偶解决地说,求各位了,顶一下!Top
13 楼lienzhu(李强)回复于 2004-12-09 09:52:28 得分 30
dlj.Source = "SELECT * FROM dbo.表 where 日期 >='2004-11-24'and 日期<'2004-11-25'"
Top
14 楼shihuawei(混混)回复于 2004-12-09 10:10:12 得分 0
结帐了,找到原因了,偶自己数据库连错了!给分!Top




