六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

在ASP中用集合成批設置數據庫

[摘要]我們知道,一般的關系數據庫(如SQL Server、Oracle、Access等)中的查詢操作是支持集合操作的,例如可以用“Update ATable Set Field1 = AValue where Field2 in (Value21,Value22)”來完成對數據庫的成批更新操作。我們可以...
我們知道,一般的關系數據庫(如SQL Server、Oracle、Access等)中的查詢操作是支持集合操作的,
例如可以用“Update ATable Set Field1 = AValue where Field2 in (Value21,Value22)”來完成對數據
庫的成批更新操作。我們可以充分利用數據庫的這種集合特性來提高ASP頁面操作數據庫的效率。如我們
可以在頁面上列出多個記錄,讓用戶選擇要操作的記錄,然后在用戶確定操作后進行成批操作,這與一個記
錄操作一次的方法相比效率明顯要高的多了。

一、HTML的集合屬性
  首先,讓我們來熟悉一下HTML的集合屬性。在表單(FORM)數據或查詢(Query)參數中,當
提交的多個參數采用同一個名稱時,這些參數值將構成一個集合,在ASP頁面可以獲取這些參數值或
同名參數的個數。如在下面的頁面(Set.HTM)中,6個復選框采用同一個參數名MyCheckBox,其值分別
為1、2、3、4、5、6。
<!-- Set.HTM -->
<html><head><title>集合屬性應用</title></head><body>
<p>請選擇要操作的項目,提交數據后,將會顯示您選擇的項目。
<form method="POST" action="set.asp">
  <br>1、<input type="checkbox" name="MyCheckBox" value="1">
  <br>2、<input type="checkbox" name="MyCheckBox" value="2">
  <br>3、<input type="checkbox" name="MyCheckBox" value="3">
  <br>4、<input type="checkbox" name="MyCheckBox" value="4">
  <br>5、<input type="checkbox" name="MyCheckBox" value="5">
  <br>6、<input type="checkbox" name="MyCheckBox" value="6">
  <br><input type="submit" value="提交數據" name="B1">
</form></body></html>
  當客戶端選擇了要顯示的項目后,下面的ASP頁面(Set.ASP)給出客戶端選擇的項目個數及其值。
<!-- Set.ASP -->
<%@ LANGUAGE = VBScript %>
<html><head><title>集合操作測試</title></head>
<body>
<%
Response.Write "<br>您一共選擇了"&request("MyCheckBox").count&"項,"
Response.Write "<br>您選擇的項目有:"&request("MyCheckBox")
%>
</body></html>
如當客戶端選擇了第二、三、五項并提交數據后,將會看到如下結果:
您一共選擇了3項,
您選擇的項目有:2, 3, 5
應該注意到,“2, 3, 5”的形式與SQL語句要求的形式是一致的,我們可以直接或間接地利用這種
形式的結果,如 "Select * from ATable where AFiled in(" & request("MyCheckBox") & ")"的實際
SQL查詢語句為“Select * from ATable where AFiled in(2, 3, 5)”。

二、HTML的集合屬性的應用
  下面我們結合一個實際的例子,討論一下如何在ASP頁面中利用HTML的集合屬性來成批操作
數據庫。現在我們有一個記錄客戶電子信箱的ACCESS數據庫EMail,其中有一個數據表EmailList,
包含CustomerId、CustomerName、CustomerEmail三個字段,分別表示客戶編號、客戶名稱、客戶電子信箱。
在ASP頁面SelectId.ASP中,我們采用CheckBox列出所有客戶的客戶名稱(各個CheckBox的值為對應的
客戶編號),讓用戶選擇給哪些客戶發送電子郵件。當用戶選擇了客戶并提交數據后,SendMail.ASP將檢
索到這些客戶的電子信箱,并給這些客戶發送電子郵件。具體的信息請參見下面ASP程序代碼和注釋信息。

<!-- SelectId.ASP:列出所有客戶的客戶名稱 -->
<html><head><title>所有客戶的客戶名稱</title></head><body>
<p align=center><font style="font-family:宋體;font-size:9pt">
請選擇要給哪些客戶發送“新年問候”的電子郵件
<form method="POST" action="SendMail.asp">
<%'建立與ACCESS數據庫的連接
Set dbConnection = Server.CreateObject("ADODB.Connection")
dbConnection.open "Driver={Microsoft Access Driver (*.mdb)};"&_
"DBQ=C:\inetpub\wwwroot\test\Email.mdb"
'獲取所有客戶的客戶編號、客戶名稱
Set rsCustomers = Server.CreateObject("ADODB.RecordSet")
rsCustomers.Open "Select CustomerId,CustomerName,CustomerEmail From EmailList",_
                 dbConnection,1,3,1
'顯示所有客戶的客戶名稱
while not rsCustomers.eof
%>
<br><input type="checkbox" name="CustomerId" value="<%=rsCustomers("CustomerId")%>">
<a href="mailto:<%=rsCustomers("CustomerEmail")%>">
<%=rsCustomers("CustomerName")%></a>
<%rsCustomers.MoveNext
wend
rsCustomers.close
set rsCustomers = nothing
dbConnection.close
set dbConnection = nothing
%>
<br><input type="submit" value="給客戶發送電子郵件" name="B1"
style="font-family:宋體;font-size:9pt">
</form></body></html>

<!-- SendMail.ASP:給所選擇客戶發電子郵件 -->
<html><head><title>給所選擇客戶發電子郵件</title></head><body>
<p align=center><font style="font-family:宋體;font-size:9pt">
正在給下面客戶發送電子郵件
<%'建立與ACCESS數據庫的連接
Set dbConnection = Server.CreateObject("ADODB.Connection")
dbConnection.open "Driver={Microsoft Access Driver (*.mdb)};"&_
"DBQ=C:\inetpub\wwwroot\test\Email.mdb"
'獲取所選擇客戶的電子信箱
Set rsCustomers = Server.CreateObject("ADODB.RecordSet")
rsCustomers.Open "Select CustomerName,CustomerEmail From EmailList where CustomerId in ("&_
                  Request("CustomerId")&")",dbConnection,1,3,1
while not rsCustomers.eof
'給一個客戶發電子郵件
Set myMail = CreateObject("CDONTS.NewMail")
myMail.From = "sales@test.com"
myMail.value("Reply-To") = "sales@test.com"
myMail.To = rsCustomers("CustomerEmail")
myMail.Subject = "來自王發軍的新年問候"
myMail.BodyFormat = 1
myMail.MailFormat = 1  
myMail.Body = "王發軍向"&rsCustomers("CustomerName")&"問好!"
myMail.Send
Set myMail = Nothing
%>
<br>給<a href="mailto:<%=rsCustomers("CustomerEmail")%>"><%=rsCustomers("CustomerName")%></a>
發送電子郵件成功!
<%
rsCustomers.MoveNext
wend
rsCustomers.close
set rsCustomers = nothing
dbConnection.close
set dbConnection = nothing
%>
<br>在所選擇的客戶發送電子郵件完畢!
</body></html>

以上程序在WINNT4.0+IIS4.0+ASP2.0+Access97下調試通過。 


主站蜘蛛池模板: 亚洲美女色在线欧洲美女 | 欧美野外多人交3 | 七七七久久久久人综合 | 亚洲天堂一级片 | 性感美女香蕉视频 | 亚洲成a人片 | 日韩欧美一区二区中文字幕 | 日韩不卡一级毛片免费 | 亚洲精品在线免费观看视频 | 中文字幕亚洲一区婷婷 | 青青在线观看 | 日韩ab | 日日干夜夜爽 | 亚洲伊人久久大香线蕉结合 | 日本欧美在线视频 | 欧美一级黄色片免费看 | 欧美一区二区三区婷婷月色 | 色综合久久精品中文字幕 | 一二三四免费高清观看在线观看 | 亚洲欧美日韩专区一 | 日韩视频高清免费看 | 日本高清观看视频 | 一级做a免费观看大全 | 亚洲主播在线 | 亚洲男人的天堂久久香蕉网 | 青青在线播放 | 性欧美人与物videos另类 | 欧美艳星nikki办公室 | 日本免费a视频 | 亚洲香蕉综合在人在线视看 | 欧美特黄一免在线观看 | 欧美特黄一免在线观看 | 四虎影院紧急入口 | 屁屁影院免费观看入口 | 视频二区日韩 | 四虎影院免费在线 | 青青草免费公开视频 | 青春草在线视频免费观看 | 欧美一区二区三区久久综合 | 日韩香蕉视频 | 欧美无专区 |