欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

ASP基礎(chǔ)知識(shí)Command對(duì)象講解

 更新時(shí)間:2015年09月27日 11:40:22   投稿:lijiao  
這篇文章主要介紹了ASP中Command對(duì)象,是ASP入門(mén)教程,感興趣的小伙伴們可以參考一下

Coonamd 對(duì)象定義了將對(duì)數(shù)據(jù)源執(zhí)行的命令,可以用于查詢(xún)數(shù)據(jù)庫(kù)表并返回一個(gè)記錄集,也可以用于對(duì)數(shù)據(jù)庫(kù)表進(jìn)行添加、更改和刪除操作。
一、使用Command 對(duì)象的步驟:
當(dāng)在 ASP 頁(yè)面中使用 Command 對(duì)象處理數(shù)據(jù)時(shí),應(yīng)首先設(shè)置命令類(lèi)型、命令文本以及相關(guān)的活動(dòng)數(shù)據(jù)庫(kù)連接等,并通過(guò) Parameter 對(duì)象傳遞命令參數(shù),然后通過(guò)調(diào)用 Execute 方法來(lái)執(zhí)行 SQL 語(yǔ)句或調(diào)用存儲(chǔ)過(guò)程,以完成數(shù)據(jù)庫(kù)記錄的檢索、添加、更改和刪除任務(wù)。其步驟如下:
1、使用 ActiveCommand 屬性設(shè)置相關(guān)的數(shù)據(jù)庫(kù)連接;
2、使用 CommandType 屬性設(shè)置命令類(lèi)型;
3、使用 CommandText 屬性定義命令(例如SQL語(yǔ)句)的可執(zhí)行文本;
4、使用 CommandTimeout 屬性設(shè)置命令超時(shí)時(shí)間;
5、使用 Execute 方法執(zhí)行命令。
二、Command 對(duì)象的屬性:

三、Command 對(duì)象的方法----Execute
該方法執(zhí)行在 CommandText 屬性中指定的查詢(xún)。語(yǔ)法格式分為以下兩種形式。
1、對(duì)于按行返回的 Command :
Set recordset=command.Execute(RecordsAffected,Parameters,Options)
2、對(duì)于不按行返回的 Command :
command.Execute RecordsAffected,Parameters,Options
  其中參數(shù) RecordsAffected 為提供程序返回操作所影響的記錄數(shù)錄。Rarameters 為使用 SQL 語(yǔ)句傳送的參數(shù)值。Options 指示提供程序如何對(duì) Command 對(duì)象的 CommandText 屬性賦值。
四、使用 Parameters 集合
Command 對(duì)象具有由 Parameter 對(duì)象組成的 Parameters 集合,Parameter 對(duì)象代表與基于參數(shù)化查詢(xún)或存儲(chǔ)過(guò)程的 Command 對(duì)象相關(guān)聯(lián)的參數(shù)或自變量。通過(guò)創(chuàng)建 Parameter 對(duì)象并添加到 Parameter 集合中,可以向參數(shù)化查詢(xún)傳遞所需要的數(shù)據(jù)。使用 Parameter 集合的步驟如表下:
使用Parameter 集合的步驟

五、Command 對(duì)象的應(yīng)用實(shí)例
1、這是一個(gè)簡(jiǎn)單的員工基本情況管理系統(tǒng),其功能有:1)、添加員工資料;2)、更改員工資料;3)、刪除員工資料,檢索員工資料。它包含著七個(gè)頁(yè)面和一個(gè)數(shù)據(jù)庫(kù)。分別為:
1)、主頁(yè)面:index.asp
2)、添加數(shù)據(jù)頁(yè)面:add.htm
3)、保存添加數(shù)據(jù)頁(yè)面:add.asp
4)、更改數(shù)據(jù)頁(yè)面:Update.asp
5)、保存更改數(shù)據(jù)頁(yè)面:Update1.asp
6)、刪除記錄頁(yè)面:Detele.asp
7)、檢索員工資料頁(yè)面:shousho.asp
8)、數(shù)據(jù)庫(kù):RSGL.mdb.用到該數(shù)據(jù)庫(kù)中的”員工基本情況表“。
2、各頁(yè)面的代碼如下:
1)、主頁(yè)面:index.asp。該頁(yè)面的功能有:
a)、創(chuàng)建兩個(gè)對(duì)象,Connectiion對(duì)象和Recordset對(duì)象,其目的是連接數(shù)據(jù)庫(kù)和返回一個(gè)記錄集;
b)、創(chuàng)建一個(gè)表格,使do while循環(huán)語(yǔ)句將各條記錄在表格中顯示出來(lái);
c)、創(chuàng)建三個(gè)超連接,一個(gè)用以連接添加數(shù)據(jù)頁(yè)面,另一個(gè)通過(guò)指定的員工姓名連接到更改數(shù)據(jù)頁(yè)面,還有一個(gè)通過(guò)指定的員工姓名連接到刪除頁(yè)面。

<% @ Language="VBScript" %>
<html>
<head><title>員工基本情況管理系統(tǒng)</title></head>
<body background="../../../images/bj1.jpg">
<%
'****************創(chuàng)建兩個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象)*********************
dim cnn,rst
set cnn=Server.CreateObject("ADODB.Connection")
set rst=Server.CreateObject("ADODB.Recordset")
'指定連接字符串,
cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("../rsgl.mdb")
cnn.Open
sSQL="select * from 員工基本情況表"
'rst.Open sSQL,cnn,1,1
set rst=cnn.Execute(sSQL,,adCmdText)
%>
<!--************創(chuàng)建一個(gè)表格,用以顯示數(shù)據(jù)庫(kù)中的各條記錄***********-->
<table align="center" border="1">
<caption><h3>教職員工基本信息表</h3></caption>
<tr colspan="5"><td><a href="shousho.asp">查詢(xún)記錄</a>||<a href="add.htm">添加記錄</a></td></tr>
<!--顯示各字段名-->
<tr><td align="center">員工姓名</td><td align="center">所在部門(mén)</td><td align="center">家庭住址</td><td align="center">家庭電話</td><td align="center">Email</td><td align="center">狀態(tài)</td>
<%
'使用do while循環(huán)語(yǔ)句將各條記錄顯示出來(lái)。
do while Not rst.eof
t1=rst("員工姓名")
t2=rst("所在部門(mén)")
t3=rst("家庭住址")
t4=rst("家庭電話")
t5=rst("Email")
tt="<tr align='center'><td>" & t1 & "</td><td>" &t2& "</td><td>" &t3& "</td><td>" &t4& "</td><td>" &t5& "</td><td>"
tt=tt & "<a href=Update.asp?id=" & t1 & ">修改</a><a href=Delete.asp?id=" & t1 & ">||刪除</a></td></tr>"
response.write tt
rst.MoveNext
loop
cnn.Close
Set cnn=Nothing
%>
</table>
</body>
</html>

2)、添加數(shù)據(jù)頁(yè)面:add.htm 。

本頁(yè)面由一個(gè)表單組成,其功能是向保存添加數(shù)據(jù)頁(yè)面(add.asp)提交數(shù)據(jù)。

<html>
<head><title>添加記錄</title></head>
<body background="../../../images/bj1.jpg">
<div align="center">
<form name="form1" method="post" action="add.asp">
<table align="center" border="1">
<tr><td colspan="2" align="center">員工基本情況表</td></tr>
<tr><td align="right">員工姓名:</td>
<td><input type="text" name="txtName"></td></tr>
<tr><td align="right">所在部門(mén):</td>
<td><input type="text" name="txtDepartment"></td></tr>
<tr><td align="right">家庭住址:</td>
<td><input type="text" name="txtAddr"></td></tr>
<tr><td align="right">家庭電話:</td>
<td><input type="text" name="txtTel"></td></tr>
<tr><td align="right">Email:</td>
<td><input type="text" name="txtemail"></td></tr>
<tr><td align="center"><input type="submit" value="提交"></td>
<td align="center"><input type="reset" value="全部重寫(xiě)"></td></tr>
</table>
</form>
</div>
</body>
</html>

3)、保存添加數(shù)據(jù)頁(yè)面:add.asp。

該頁(yè)面的功能有:

a)、使用Request對(duì)象獲取從add.htm頁(yè)面提交的值;

b)、創(chuàng)建三個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象和指令對(duì)象)和五個(gè)參數(shù),通過(guò)調(diào)用參數(shù)執(zhí)行INSERT插入命令。

<% @ Language="VBScript" %>
<html>
<head>
<title>添加記錄</title>
</head>
<body background="../../../images/bj1.jpg">
<!-- #include virtual ="/adovbs.inc" -->
<%
'****************創(chuàng)建三個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象和指令對(duì)象)和五個(gè)參數(shù)*********************
dim cnn,rst,cmd
set cnn=Server.CreateObject("ADODB.Connection")
set rst=Server.CreateObject("ADODB.Recordset")
set cmd=Server.CreateObject("ADODB.Command")
'指定連接字符串,
cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("../rsgl.mdb")
cnn.Open
'設(shè)置ActiveConnection屬性,使Command對(duì)象與打開(kāi)的連接相關(guān)聯(lián)
set cmd.ActiveConnection=cnn
'指定傳送給數(shù)據(jù)提供者的命令文本是一條SQL語(yǔ)言。
cmd.CommandType=adCmdText
cmd.CommandText="INSERT INTO 員工基本情況表(員工姓名,所在部門(mén),家庭住址,家庭電話,Email) values(?,?,?,?,?)"
'創(chuàng)建五個(gè)Parameter對(duì)象
set PrmName=cmd.CreateParameter("員工姓名",adVarChar,adParamInput,10)
set PrmDepartment=cmd.CreateParameter("所在部門(mén)",adVarChar,adParamInput,10)
set PrmAddr=cmd.CreateParameter("家庭住址",adVarChar,adParamInput,12)
set PrmTel=cmd.CreateParameter("家庭電話",adVarChar,adParamInput,15)
set PrmEmail=cmd.CreateParameter("Email",adVarChar,adParamInput,20)
'將parameter對(duì)象添加到Parameters集合中。
cmd.Parameters.Append prmName
cmd.Parameters.Append prmDepartment
Cmd.Parameters.Append prmAddr
Cmd.Parameters.Append prmTel
Cmd.Parameters.Append prmEmail
'使用表單值設(shè)置參數(shù)值
PrmName.Value=Request.Form("txtName")
PrmDepartment.Value=Request.Form("txtDepartment")
PrmAddr.Value=Request.Form("txtAddr")
PrmTel.Value=Request.Form("txtTel")
PrmEmail.Value=Request.Form("txtEmail")
'執(zhí)行INSERT插入命令
cmd.Execute
%>
<!--用表格顯示記錄。-->
<table align="center" border="1">
<tr><td colspan="2" align="center">員工基本情況表</td></tr>
<tr><td align="right" width="130">員工姓名:</td>
<td width="200"><%=prmName.Value %></td></tr>
<tr><td align="right">所在部門(mén):</td>
<td><%=prmDepartment.Value %></td></tr>
<tr><td align="right">家庭住址:</td>
<td><%=prmAddr.Value %></td></tr>
<tr><td align="right">家庭電話:</td>
<td><%=prmTel.Value %></td></tr>
<tr><td align="right">Email:</td>
<td><%=prmEmail.Value %></td></tr>
</table>
<center><p><p><p>
<hr width="505" color="#cc9999">
&nbsp;<p><p><h3>記錄添加成功!</h3>
<p><a href="add.htm">返回記錄添加表單</a>||<a href="index.asp">返回主頁(yè)</a>
</center>
</body>
</html>


4)、更改數(shù)據(jù)頁(yè)面:Update.asp。該頁(yè)面的功能有:

a)、創(chuàng)建兩個(gè)對(duì)象,Connectiion對(duì)象和Recordset對(duì)象,其目的是連接數(shù)據(jù)庫(kù)和返回一個(gè)記錄集;

b)、創(chuàng)建一個(gè)表單,其目的是提交更改過(guò)的數(shù)據(jù)。

cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("../rsgl.mdb")
cnn.Open
sSQL="select * from 員工基本情況表 where 員工姓名='" & a & "'"
'rst.Open sSQL,cnn,1,1
set rst=cnn.Execute(sSQL,,adCmdText)
%>
<html>
<head><title>更改記錄</title></head>
<body background="../../../images/bj1.jpg">
<div align="center">
<!--*****************創(chuàng)建一個(gè)表單****************************************-->
<form name="form1" method="post" action="Update1.asp">
<table align="center" border="1">
<tr><td colspan="2" align="center">員工基本情況表</td></tr>
<tr><td align="right">員工姓名:</td>
<td><input type="text" name="txtName" value=<%=rst("員工姓名")%> readonly></td></tr>
<tr><td align="right">所在部門(mén):</td>
<td><input type="text" name="txtDepartment" value=<%=rst("所在部門(mén)")%>></td></tr>
<tr><td align="right">家庭住址:</td>
<td><input type="text" name="txtAddr" value=<%=rst("家庭住址")%>></td></tr>
<tr><td align="right">家庭電話:</td>
<td><input type="text" name="txtTel" value=<%=rst("家庭電話")%>></td></tr>
<tr><td align="right">Email:</td>
<td><input type="text" name="txtemail" value=<%=rst("Email")%>></td></tr>
<tr><td align="center"><input type="submit" value="提交"></td>
<td align="center"><input type="reset" value="全部重寫(xiě)"></td></tr>
</table>
</form>
</div>
</body>
</html>

5)、保存更改數(shù)據(jù)頁(yè)面:Update2.asp。

該頁(yè)面的功能有:

a)、使用Request對(duì)象獲取從Update.asp頁(yè)面提交的值;

b)、創(chuàng)建二個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象);

c)、通過(guò)表格顯示更改后的記錄。

<% @ Language="VBScript" %>
<%
'*****************從提交表單中提取數(shù)值***************************
Dim Name,Department,Addr,Tel,Email
Name=Trim(Request.Form("txtName"))
Department=Trim(Request.Form("txtDepartment"))
Addr=Trim(Request.Form("txtAddr"))
Tel=Trim(Request.Form("txtTel"))
Email=Trim(Request.Form("txtEmail"))
%>
<html>
<head>
<title>更改記錄</title>
</head>
<body>
<!-- #include virtual ="/adovbs.inc" -->
<%
'****************創(chuàng)建二個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象)*********************
dim cnn,rst,cmd
set cnn=Server.CreateObject("ADODB.Connection")
set rst=Server.CreateObject("ADODB.Recordset")
'指定連接字符串,
cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("../rsgl.mdb")
cnn.Open
sSQL="update 員工基本情況表 set 所在部門(mén)='" & Department & "',家庭住址='" & Addr & "',家庭電話='" & Tel & "',Email='" & Email & "' where 員工姓名='" & name & "'"
rst.Open sSQL,cnn,1,2
set rst=nothing
%>
<!--**************************用表格顯示記錄。**********************-->
<table align="center" border="1">
<tr><td colspan="2" align="center">員工基本情況表</td></tr>
<tr><td align="right" width="130" align="center">員工姓名:</td>
<td width="200"><%=Name %></td></tr>
<tr><td align="right">所在部門(mén):</td>
<td><%=Department %></td></tr>
<tr><td align="right">家庭住址:</td>
<td><%=Addr %></td></tr>
<tr><td align="right">家庭電話:</td>
<td><%=Tel %></td></tr>
<tr><td align="right">Email:</td>
<td><%=Email %></td></tr>
</table>
<center>
<p><hr width="505" color="#cc9999">
<h3>記錄更改成功!</h3>
<p><a href="index.asp">返回首頁(yè)</a>
</center>
</body>
</html>


6)、刪除數(shù)據(jù)頁(yè)面:Detele.asp。

a)、使用Request對(duì)象獲取要?jiǎng)h除的員工姓名;

b)、創(chuàng)建三個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象和指令對(duì)象)和一個(gè)參數(shù),通過(guò)參數(shù)指定的值刪除記錄;

c)、給出刪除成功提示框。

<title>更改記錄</title>
</head>
<body background="../../../images/bj1.jpg">
<!-- #include virtual ="/adovbs.inc" -->
<%
'****************創(chuàng)建三個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象和指令對(duì)象)和一個(gè)參數(shù)*********************
dim cnn,rst,cmd
set cnn=Server.CreateObject("ADODB.Connection")
set rst=Server.CreateObject("ADODB.Recordset")
set cmd=Server.CreateObject("ADODB.Command")
'指定連接字符串,
cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("../rsgl.mdb")
cnn.Open
'設(shè)置ActiveConnection屬性,使Command對(duì)象與打開(kāi)的連接相關(guān)聯(lián)
set cmd.ActiveConnection=cnn
'指定傳送給數(shù)據(jù)提供者的命令文本是一條SQL語(yǔ)言。
cmd.CommandType=adCmdText
cmd.CommandText="Delete from 員工基本情況表 where 員工姓名=? "
'創(chuàng)建一個(gè)Parameter對(duì)象
set PrmName=cmd.CreateParameter("員工姓名",adVarChar,adParamInput,10)
'將parameter對(duì)象添加到Parameters集合中。
cmd.Parameters.Append prmName
'使用表單值設(shè)置參數(shù)值
PrmName.Value=Name
'執(zhí)行Delete刪除命令
cmd.Execute
%>
&nbsp;<p><p><p>
<hr width="505" color="#cc9999">
<center><h3>記錄刪除成功!</h3>
<p><a href="index.asp">返回主頁(yè)</a>
</center>
</body>
</html>


7)、檢索員工資料頁(yè)面 :shousho.asp。

a)、使用一個(gè)列表框用以提交檢索的條件;

b)、創(chuàng)建三個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象和指令對(duì)象)和一個(gè)參數(shù),使用 Parameter 對(duì)象的 Value 屬性將表單提交的值賦給參數(shù);

c)、使用for 循環(huán)語(yǔ)句將檢索出的記錄集中的每一條記錄都通過(guò)表格顯示出來(lái)。

<% @ Language="VBScript" %>
<html>
<head>
<title>使用參數(shù)化檢索記錄</title>
</head background="../../../images/bj1.jpg>
<body background="../../../images/bj1.jpg">
<!--*************開(kāi)始創(chuàng)建表單*****************-->
<div align="center">
<p>查詢(xún)各部門(mén)員工的基本情況
<form name="form1" method="post" action="Shousho.asp">
選擇部門(mén):
<select size="1" name="department">
<option selected value="all">全部記錄</option>
<option value="教務(wù)處">教務(wù)處</option>
<option value="英語(yǔ)教研室">英語(yǔ)教研室</option>
<option value="語(yǔ)文教研室">語(yǔ)文教研室</option>
<option value="數(shù)學(xué)教研室">數(shù)學(xué)教研室</option>
<option value="財(cái)務(wù)處">財(cái)務(wù)處</option>
</select>
<input type="submit" value="提交">||<a href="index.asp">返回主頁(yè)</a>
</form>
<!-- #include virtual ="/adovbs.inc" -->
<%
'****************創(chuàng)建三個(gè)對(duì)象(連接對(duì)象、記錄集對(duì)象和指令對(duì)象)和一個(gè)參數(shù)*********************
dim cnn,rst,cmd,i
set cnn=Server.CreateObject("ADODB.Connection")
set rst=Server.CreateObject("ADODB.Recordset")
set cmd=Server.CreateObject("ADODB.Command")
'指定連接字符串,
cnn.ConnectionString="PROVIDER=Microsoft.jet.OLEDB.4.0;Data Source=" & server.MapPath("../rsgl.mdb")
cnn.Open
'創(chuàng)建一個(gè)Parameter對(duì)象
set PrmDepartment=cmd.CreateParameter("所在部門(mén)",adVarChar,adParamInput,10)
'將Parameter對(duì)象添加到Prmameters集合中
cmd.Parameters.Append prmDepartment
'將用戶(hù)提交的所在部門(mén)名稱(chēng)作為parameter對(duì)象的值
prmDepartment.Value=Request.Form("department")
'指定傳送給數(shù)據(jù)提供者的命令文本是一條SQL語(yǔ)言。
cmd.CommandType=adCmdText
'設(shè)置ActiveConnection屬性,使Command對(duì)象與打開(kāi)的連接相關(guān)聯(lián)
set cmd.ActiveConnection=cnn
'******如果沒(méi)有提交所在部門(mén)名稱(chēng),或選擇所有部門(mén),則顯示所有記錄,否則按參數(shù)進(jìn)行查詢(xún)。****************
if PrmDepartment.Value="" or Request.Form("department")="all" then
cmd.CommandText="select * from 員工基本情況表"
Else
'便用參數(shù)化查詢(xún)語(yǔ)句作為命令文本
cmd.CommandText="select * from 員工基本情況表 where 所在部門(mén)=?"
end if
'向服務(wù)器發(fā)送SQL語(yǔ)句并返回一個(gè)記錄集
Set rst=cmd.Execute
'-----------如果記錄集不存在,則顯示一條提示信息,否則,列出符合條件的記錄。----------
if rst.EOF then
%>
<p><b>沒(méi)有找到符合條件的記錄!</b></p>
<% else %>
<table border="1">
<tr>
<!--用for 循環(huán)語(yǔ)句列出字段名。-->
<% for i=0 to rst.Fields.Count-1 %>
<th><%=rst(i).Name %></th>
<% next %>
<!--用while條件語(yǔ)句列出每條記錄-->
<% while not rst.eof %>
<tr>
<%
'用for循環(huán)語(yǔ)句列出某條記錄的各字段的值。
for i=0 to rst.Fields.Count-1
'如果字段值為空,則顯示一個(gè)空格
if IsNull(rst(i)) then
%>
<td>&nbsp;</td>
<% else %>
<td nowrap><% =rst(i) %></td>
<% end if %>
<% next %>
</tr>
<%
rst.MoveNext
wend
%>
</table>
<% end if %>
</div>
</body>
</html>

以上就是關(guān)于ASP基礎(chǔ)知識(shí)Command對(duì)象的入門(mén)教程,希望對(duì)大家的學(xué)習(xí)有所幫助,多多交流探討。

相關(guān)文章

最新評(píng)論