使用ASP在線維護(hù)數(shù)據(jù)庫
發(fā)表時間:2024-05-17 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]隨著因特網(wǎng)的發(fā)展,在網(wǎng)絡(luò)環(huán)境中,數(shù)據(jù)庫應(yīng)用漸漸向操作簡單、功能實用的方向發(fā)展。本文介紹如何利用ASP技術(shù)實現(xiàn)對 數(shù)據(jù)庫進(jìn)行在線維護(hù)的方法,并給出了各種功能鍵的實現(xiàn)過程。 實現(xiàn)功能 數(shù)據(jù)庫管理員可在網(wǎng)上直接維護(hù)數(shù)據(jù)庫。在數(shù)據(jù)查詢與數(shù)據(jù)庫維護(hù)界面中(見圖1),通過復(fù)選框選取所要操作的數(shù)據(jù)行, 并在功能...
隨著因特網(wǎng)的發(fā)展,在網(wǎng)絡(luò)環(huán)境中,數(shù)據(jù)庫應(yīng)用漸漸向操作簡單、功能實用的方向發(fā)展。本文介紹如何利用ASP技術(shù)實現(xiàn)對
數(shù)據(jù)庫進(jìn)行在線維護(hù)的方法,并給出了各種功能鍵的實現(xiàn)過程。
實現(xiàn)功能
數(shù)據(jù)庫管理員可在網(wǎng)上直接維護(hù)數(shù)據(jù)庫。在數(shù)據(jù)查詢與數(shù)據(jù)庫維護(hù)界面中(見圖1),通過復(fù)選框選取所要操作的數(shù)據(jù)行,
并在功能鍵區(qū)通過單選按鈕選取所要進(jìn)行的操作,然后按“提交”按鈕,即可進(jìn)行所需操作,并得到返回信息(見圖2)
圖1 數(shù)據(jù)查詢與數(shù)據(jù)庫維護(hù)界面
圖2 返回信息提示界面
實現(xiàn)環(huán)境如下:
客戶端:Windows 98 操作系統(tǒng)+I(xiàn)E 5.0瀏覽器
服務(wù)器端:SQL Server 7.0數(shù)據(jù)庫
網(wǎng)站應(yīng)用程序開發(fā)環(huán)境:Active Server Pages (ASP)
網(wǎng)頁制作開發(fā)環(huán)境:Microsoft FrontPage 2000
編程實現(xiàn)
首先,用FrontPage 2000編制數(shù)據(jù)查詢與數(shù)據(jù)庫維護(hù)界面,通過與后臺SQL Server數(shù)據(jù)庫standard建立關(guān)聯(lián),從數(shù)據(jù)
庫表中查取數(shù)據(jù),生成數(shù)據(jù)集合rs。為加快程序訪問速度,可以將其保存在session對象rs1中。部分代碼如下:
<%
sql=“select * from inform order by pdate DESC”
Set rs=Server.CreateObject(“ADODB.Recordset”)
rs.Open sql,“Driver={SQL Server};Server=
(local);Database=info;UID=user;PWD=password;”,3,2
set session(“rs1”)=rs
%>
插入一個Form,添加“插入”、“刪除”、“修改”等功能鍵,并將功能鍵處的單選按鈕的組名稱設(shè)為edit,按鈕值分
別對應(yīng)為“insert”、“delete”、“update”。
然后,編寫ASP程序tzwh1.asp 文件。從session 中讀取數(shù)據(jù),根據(jù)數(shù)據(jù)項用split函數(shù)將其分開,轉(zhuǎn)化為一個數(shù)組進(jìn)
行處理,并用trim函數(shù)去掉數(shù)據(jù)前后空格。程序部分代碼如下:
<% set rs=session(“rs1”)
edit=trim(Request(“edit”))
id=“, ”&trim(Request(“id”))&“, ”
eno=split(trim(Request(“NO”)), “, ”)
etitle=split(trim(Request(“title”)), “, ”)
epdate=split(trim(Request(“pdate”)), “, ”)
ewriter=split(trim(Request(“writer”)), “, ”)
econtent=split(trim(Request(“content”)) , “, ”)
%>
最后,實現(xiàn)功能鍵。功能鍵的選擇用case 語句實現(xiàn)。每一個實現(xiàn)過程中,利用inStr比較函數(shù)將讀出來的eno與數(shù)據(jù)項
的標(biāo)識號id相比較,可識別出所選的復(fù)選框是否有效。for循環(huán)體的下界采用Ubound函數(shù),避免了網(wǎng)頁數(shù)據(jù)的提取錯誤。部
分程序代碼如下:
<% select case edit
case “insert”
for i=0 to Ubound(eno)
if inStr(id,“, ”&trim(eno(i))&“,”)>0 then
rs.AddNew
rs(“title”)=trim(etitle(i))
rs(“pdate”)=trim(epdate(i))
rs(“writer”)=trim(ewriter(i))
rs(“content”)=trim(econtent(i))
rs.Update
%>
<tr>
<td align=“center”><% =rs(“pdate”)
%>.</td>
<td><font color=“#008080”><% =rs(“title”) %>.</font></td>
<td><font color=“#008080”>插入新記錄成功!</font></td>
</tr>
<% End if
Next%>
<% case “delete”
for i=0 to 9
if inStr(id,“, ”&trim(rs(“id”))&“,” )>0 then%>
<tr>
<td align=“center”><% =rs(“pdate”)
%>.</td>
<td><% =rs(“title”) %>.</td>
<td><font color=“#FF0000”>記錄刪除成功!</font></td>
</tr>
<%
rs.delete 1
End if
rs.movenext
if rs.eof then Exit for End if
Next
case “update”
for i=0 to 9
if inStr(id,“,”&trim(rs(“id”))&“,”)>0 then
rs(“title”)=trim(etitle(i))
rs(“pdate”)= trim(epdate(i))
rs(“writer”)= trim(ewriter(i))
rs(“content”)= trim(econtent(i))
rs.Update %>
<tr>
<td align=“center”><% =rs(“pdate”)
%>.</td>
<td><% =rs(“title”) %>.</td>
<td><font color=“#0000FF”>記錄修改成功!</font></td>
</tr>
<% End if
rs.movenext
if rs.eof then Exit for End if
Next
end select
%>