相關資訊
本類常用軟件
-
福建農(nóng)村信用社手機銀行客戶端下載下載量:584204
-
Windows優(yōu)化大師下載量:416896
-
90美女秀(視頻聊天軟件)下載量:366961
-
廣西農(nóng)村信用社手機銀行客戶端下載下載量:365699
-
快播手機版下載量:325855
本文跟大家介紹的是關于在記錄集中加入判斷使之靈活的實例分享,對ASP有興趣的朋友可以學習學習。
在應用中,有時候會要求按照日期來排列數(shù)據(jù),并且還會需要簡單的按日期來檢索數(shù)據(jù),比如在頁面上加入一個跳轉(zhuǎn)菜單,包含數(shù)據(jù)的日期列表,然后選擇日期后傳遞日期參數(shù)跳轉(zhuǎn)。這種做法在沒有日期的時候應該顯示哪一天的數(shù)據(jù)呢?
通常會用“DATE()”作為沒有參數(shù)情況下的選擇,就是顯示當天的數(shù)據(jù),但如果當天沒有數(shù)據(jù)呢?
“DATE()-1”?似乎不能解決問題。
先看看dreamweaver MX 自動生成記錄集的SQL代碼:
SCSJ.Source = "SELECT * FROM dbo.MCIS_生產(chǎn)數(shù)據(jù) WHERE 日期 = '" + Replace(SCSJ__MMColParam, "'", "''") + "' ORDER BY 日期 DESC"
在日期字段的過濾上使用了“=”,大家都知道如果是文本類型的話可以使用“LIKE”操作符配合“%”來獲得所有記錄,如果可以做到,那么在沒有日期參數(shù)傳遞的情況下就顯示所有的記錄倒是不錯的選擇。
這里的實現(xiàn)方法就是修改Dreamweaver MX 自動生成的記錄集代碼,加入判斷,當URL參數(shù)不存在的時候,記錄集SQL過濾使用“LIKE”操作符獲得所有記錄,否則使用“=”操作符獲得屬于參數(shù)日期的記錄。
下面是代碼,應該很好理解的。
<%
Dim SCSJ__MMColParam
SCSJ__MMColParam = "%"
If (Request.QueryString("MCISDATE") <> "") Then
SCSJ__MMColParam = Request.QueryString("MCISDATE")
End If
%>
<%
Dim SCSJ
Dim SCSJ_numRows
Set SCSJ = Server.CreateObject("ADODB.Recordset")
SCSJ.ActiveConnection = MM_jbcjsql_STRING
If (Request.QueryString("MCISDATE") <> "") Then
SCSJ.Source = "SELECT * FROM dbo.MCIS_生產(chǎn)數(shù)據(jù) WHERE 日期 = '" + Replace(SCSJ__MMColParam, "'", "''") + "' ORDER BY 日期 DESC"
ELSE
SCSJ.Source = "SELECT * FROM dbo.MCIS_生產(chǎn)數(shù)據(jù) WHERE 日期 LIKE '" + Replace(SCSJ__MMColParam, "'", "''") + "' ORDER BY 日期 DESC"
END IF
SCSJ.CursorType = 0
SCSJ.CursorLocation = 2
SCSJ.LockType = 1
SCSJ.Open()
SCSJ_numRows = 0
%>