函數
本例是一個資料庫查詢的例子,通過Split函數對查詢欄位進行了切割。用於想靈活控制查詢或開發更深層應用的一個例子。
<%
Dim Conn
Dim Rs
Dim j
Dim i
Set Conn = Server.CreateObject("adodb.connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("myweb\database\GuestBook.mdb")
Set Rs = Server.CreateObject("Adodb.RecordSet")
'StrSql="Select * From GuestBook" '等同於下句。
StrSql=SplitText("Title Content"," ","Select "," From GuestBook",",")
Rs.Open StrSql, Conn, 1, 3
Call RsFieldShow("Title Content"," ","標題: 內容:","<br/> <br/>")
'j=Rs.Fields.count
'For i=0 to (j-1)
' Response.Write("第" & i+1 & "個欄位名:" & Rs.Fields(i).Name & "<br><br>")
'Next
%>
<%
'ASP中把要查詢的欄位(Content)以字串形式傳遞,附有首碼(PreText)、尾碼(LastText)。
'要求前尾碼產生數組後,與查詢欄位的數目相同。
Sub RsFieldShow(Byval Content,Byval SplitMark,Byval PreText,Byval LastText)
On Error Resume Next
EveryString=Split(Content,SplitMark)'獲得字串數組,並賦值。
EveryPreText=Split(PreText,SplitMark)
EveryLastText=Split(LastText,SplitMark)
For i=LBound(EveryString) to UBound(EveryString)
Response.Write EveryPreText(i) & Rs(EveryString(i)) & EveryLastText(i) '輸出結果
Next
End Sub
'按照指定的格式輸出字串。
Function SplitText(Byval Content,Byval SplitMark,Byval PreText,Byval LastText,Byval SplitChar)
On Error Resume Next
Dim StrQ
StrQ=Split(Content,SplitMark) '獲得字串數組,並賦值。
For i=LBound(StrQ) to UBound(StrQ) '利用函數取得數組上限和下限。
SplitText=SplitText & StrQ(i) & SplitChar '進行組合
Next
SplitText=Left(SplitText,Len(SplitText)-1) '去掉最後一個符號。
SplitText=PreText & SplitText & LastText '加上前尾碼並返回。
End Function
%>
你可以根據實際情況設定資料庫路徑、欄位查詢等。
輸出結果:
標題:ASP中Split 函數的一例
內容:www.webjx.com越來越多的內容了!