一.VBScript語法簡介
VBScript語句是一種基於VB的一種腳本語言,主要用於WEB服務器端的程序開發,我們這裏只介紹一些簡單的語句,主要是操作數據庫的幾種常見的語句
<1>.vbscript的標識
<%
語句
……
%>
<2>定義變量dim語句
<%
dim a,b
a=10
b=“ok!”
%>
注意:定義的變量可以是數值型,也可以是字符或者其他類型的
<3>簡單的控制流程語句
1. If 條件1 then
語句1
elseif 條件2 then
語句2
else
語句3
endif
2.while 條件
語句
wend
3.for count=1 to n step m
語句1
exit for
語句2
next
二。ASP數據庫簡單操作教程
<1>.數據庫連接(用來單獨編制連接文件conn.asp)
<%
Set conn = Server.CreateObject(/"ADODB.Connection/")
conn.Open /"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=/" & Server.MapPath(/"//bbs//db1//user.mdb/")
%>
(用來連接bbs//db1//目錄下的user.mdb數據庫)
<2>顯示數據庫記錄
原理:將數據庫中的記錄一一顯示到客戶端瀏覽器,依次讀出數據庫中的每一條記錄
如果是從頭到尾:用循環並判斷指針是否到末 使用: not rs.eof
如果是從尾到頭:用循環並判斷指針是否到開始 使用:not rs.bof
<!——#include file=conn.asp——> (包含conn.asp用來打開bbs//db1//目錄下的user.mdb數據庫)
<%
set rs=server.CreateObject(/"adodb.recordset/") (建立recordset對象)
sqlstr=/"select * from message/" ——>(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表)
rs.open sqlstr,conn,1,3 ——>(表示打開數據庫的方式)
rs.movefirst ——>(將指針移到第一條記錄)
while not rs.eof ——>(判斷指針是否到末尾)
response.write(rs(/"name/")) ——>(顯示數據表message中的name字段)
rs.movenext ——>(將指針移動到下一條記錄)
wend ——>(循環結束)
------------------------------------------------------
rs.close
conn.close 這幾句是用來關閉數據庫
set rs=nothing
set conn=nothing
-------------------------------------------------------
%>
其中response對象是服務器向客戶端瀏覽器發送的信息
<3>增加數據庫記錄
增加數據庫記錄用到rs.addnew,rs.update兩個函數
<!——#include file=conn.asp——> (包含conn.asp用來打開bbs//db1//目錄下的user.mdb數據庫)
<%
set rs=server.CreateObject(/"adodb.recordset/") (建立recordset對象)
sqlstr=/"select * from message/" ——>(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表)
rs.open sqlstr,conn,1,3 ——>(表示打開數據庫的方式)
rs.addnew 新增加一條記錄
rs(/"name/")=/"xx/" 將xx的值傳給name字段
rs.update 刷新數據庫
------------------------------------------------------
rs.close
conn.close 這幾句是用來關閉數據庫
set rs=nothing
set conn=nothing
-------------------------------------------------------
%>
<4>刪除一條記錄
刪除數據庫記錄主要用到rs.delete,rs.update
<!——#include file=conn.asp——> (包含conn.asp用來打開bbs//db1//目錄下的user.mdb數據庫)
<%
dim name
name=/"xx/"
set rs=server.CreateObject(/"adodb.recordset/") (建立recordset對象)
sqlstr=/"select * from message/" ——>(message爲數據庫中的一個數據表,即你要顯示的數據所存放的數據表)
rs.open sqlstr,conn,1,3 ——>(表示打開數據庫的方式)
-------------------------------------------------------
while not rs.eof
if rs.(/"name/")=name then
rs.delete
rs.update 查詢數據表中的name字段的值是否等於變量name的值/"xx/",如果符合就執行刪除,
else 否則繼續查詢,直到指針到末尾爲止
rs.movenext
emd if
wend
------------------------------------------------------
rs.close
conn.close 這幾句是用來關閉數據庫
set rs=nothing
set conn=nothing
-------------------------------------------------------
%>
<5>關於數據庫的查詢
(a) 查詢字段爲字符型
<%
dim user,pass,qq,mail,message
user=request.Form(/"user/")
pass=request.Form(/"pass/")
qq=request.Form(/"qq/")
mail=request.Form(/"mail/")
message=request.Form(/"message/")
if trim(user)&/"x/"=/"x/" or trim(pass)&/"x/"=/"x/" then (檢測user值和pass值是否爲空,可以檢測到空格)
response.write(/"註冊信息不能爲空/")
else
set rs=server.CreateObject(/"adodb.recordset/")
sqlstr=/"select * from user where user=/'/"&user&/"/'/" (查詢user數據表中的user字段其中user字段爲字符型)
rs.open sqlstr,conn,1,3
if rs.eof then
rs.addnew
rs(/"user/")=user
rs(/"pass/")=pass
rs(/"qq/")=qq
rs(/"mail/")=mail
rs(/"message/")=message
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(/"註冊成功/")
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(/"註冊重名/")
%>
(b)查詢字段爲數字型
<%
dim num
num=request.Form(/"num/")
set rs=server.CreateObject(/"adodb.recordset/")
sqlstr=/"select * from message where id=/"&num (查詢message數據表中id字段的值是否與num相等,其中id爲數字型)
rs.open sqlstr,conn,1,3
if not rs.eof then
rs.delete
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(/"刪除成功/")
end if
rs.close
conn.close
set rs=nothing
set conn=nothing
response.write(/"刪除失敗/")
%>
<6>幾個簡單的asp對象的講解
response對象:服務器端向客戶端發送的信息對象,包括直接發送信息給瀏覽器,重新定向URL,或設置cookie值
request對象:客戶端向服務器提出的請求
session對象:作爲一個全局變量,在整個站點都生效
server對象:提供對服務器上方法和屬性的訪問
(a) response對象的一般使用方法
比如:
<%
resposne.write(/"hello, welcome to asp!/")
%>
在客戶端瀏覽器就會看到 hello, welcome to asp! 這一段文字
<%
response.Redirect(/"www.sohu.com/")
%>
如果執行這一段,則瀏覽器就會自動連接到 “搜狐” 的網址
關於response對象的用法還有很多,大家可以研究研究
request對象的一般使用方法
比如客戶端向服務器提出的請求就是通過request對象來傳遞的列如 :你在申請郵箱的所填寫的個人信息就是通過該對象來將你所填寫的信息傳遞給服務器的
比如:這是一段表單的代碼,這是提供給客戶填寫信息的,填寫完了按“提交”傳遞給request.asp文件處理後再存入服務器數據庫
<form name=/"form1/" method=/"post/" action=/"request.asp/">
<p> <input type=/"text/" name=/"user/">
</p>
<p>
<input type=/"text/" name=/"pass/">
</p>
<p>
<input type=/"submit/" name=/"Submit/" value=/"提交/">
</p>
</form>那麼request.asp該如何將其中的信息讀入,在寫入數據庫,在這裏就要用到request對象了,下面我們就來分析request.asp的寫法
<%
dim name,password (定義user和password兩個變量)
name=request.form(“user”) (將表單中的user信息傳給變量name)
password=request.form(“pass”) (將表單中的pass信息傳給變量password)
%>
通過以上的幾句代碼我們就將表單中的數據讀進來了,接下來我們要做的就是將信息寫入數據庫了,寫入數據庫的方法上面都介紹了,這裏就不一一複述了。