vbs 基本语法
2009-05-15 20:07
330 查看
call produce(argument1)
Dim bian1,biang2
const chang1,chang2
erase
erase array
exit
exit do
exit for
exit function
exit sub
option explicit 强制详细定义变量
select case
VBscript常用函数:
1.数值型函数:
abs(num): 返回绝对值
sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负
hex(num): 返回十六进制值 直接表示:&Hxx 最大8位
oct(num): 返回八进制值 直接表示:&Oxx 最大8位
sqr(num): 返回平方根 num>0
int(num): 取整 int(99.8)=99;int(13.2)=13;int(-13.9)=-14; int(-13.2)=-14;int(-99.2)=-100 ;
当num为整数时,截尾取整,当num为负数时,加满去整。
fix(num): 取整 fix(99.8)=99; fix(-99.2)=-99 fix为截尾取整。
round(num,n): 四舍五入(小于等于5舍,大于5入)取小数位 round(3.14159,3)=3.142 ;(须大于5才入)round(3.25,1)=3.2
log(num): 取以e为底的对数 num>0
exp(n): 取e的n次幂 通常用 num^n
sin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num); tan(num); atn(num)
2.字符串函数:
len(str):计算字符串长度 中文字符长度也计为一!
mid(str,起始字符,[读取长度]):截取字符串中间子字符串 ,起始字符从1开始。
left(str,nlen):从左边起截取nlen长度子字符串
right(str,nlen):从右边起截取nlen长度子字符串
Lcase(str):字符串转成小写
Ucase(str):字符串转成大写
trim(str):去除字符串两端空格
Ltrim(str):去除字符串左侧空格
Rtrim(str):去除字符串右侧空格
replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串
注:默认值:起始字符 1;替代次数 不限;比较方法 区分大小写(0)
InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串 可选参数需同时选 返回起始位置
InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串 返回起始位置
注:instrrev与instr的运行结果是一样的。
space(n):构造n个空格的字符串
string(n,str):构造由n个str第一个字符组成的字符串
StrReverse(str):反转字符串
split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组 可选参数需同时选
3.数据类型转换函数:
Cint(str):转换为数字。str不能为日期格式。
Cstr(str):
Clng(str):转换为长整型。
Cbool(num):num不为零 True;反之 False
Cdate(str):str可以为后面几种格式:1.Am 12:00:00;2.正数 距离1899/12/31天数的日期;3.1980年9月3日 AM 12:30:2;4.1980/09/23 PM 2:23:32
Cbyte(num):num<255 转换为字节
Csng(str):转换为单精度数值
Cdbl(str):转换为双精度数值
Ccur(str):转换为现金格式
4.时间函数:
注意:参数date表示日期型数据,参数time表示时间型数据,参数datetime表示日期时间型数据。不同的参数不能随便混用,有可能导致出错。
date:取系统当前日期
time:取系统当前时间
now:取系统当前时间及日期值 Datetime类型
timer:取当前时间距离零点秒值,计时器,可计算时间差
DateAdd(间隔单位,间隔值,日期):推算相邻日期 。间隔单位为字符常量,"yyyy"表示年,"q"表示季,"m"表示月,"y","d","w"都表示日,"ww"表示周,"h","n","s"分别是时,分,秒。
DateDiff(间隔单位,日期一,日期二):计算时间差 日期二-日期一
Datepart(间隔单位,日期):计算日期的间隔单位值
Dateserial(date):输出日期值(按序列计算)
Timeserial(time):输出时间值(按序列计算)
DateValue(datetime):取出字符串中日期值
Timevalue(datetime):取出字符串中时间值
weekday(date):计算星期几
MonthName(date):输出月分名
year(datetime):截取年份
month(datetime):截取月份
day(datetime):截取日
hour(datetime):截取小时
minute(datetime):截取分钟
second(datetime):截取秒
5.其它函数:
Array(unit,..):动态生成数组
Asc(str):输出字符串第一个字符的ASCII码
Chr(asc):转换ASCII为字符 Enter:Chr(13)&Chr(10)
Filter(数组名称,关键字符串,[,包含][,比较方法]):
将字符串数组中含有关键字符串的元素存成新的数组(默认) [包含]为false则取不包含的元素
Join(ArrayName):将数组中元素连成字符串
Ubound(ArrayName[,维数]):取得数组相应维数的上界
Lbound(ArrayName[,维数]):取得数组相应维数的下界 一般为0
Randmize n:启动随机数种子
Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数
取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)
子程序和自定义函数
Sub StrSubName Function StrFunName(arg[1],..)
子程序体 函数体
Exit Sub 中途跳出 Exit Function 中途跳出
End Sub StrFunName=Value 返回值
End Function
[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数
子程序和自定义函数可以递归调用;
ASP六大对象常用语句示范:
Response:
Response.write StrVar/"String":向网页写出参数值或字符串 等同于在Html标记中嵌入<%=StrVar/"String"%>
Response.End:停止页面编译,并将已经编译内容输出到浏览器
Response.Buffer=True&#124;False:页面编译时是否使用缓存的设置,一般在页面头部设置
Response.Flush:强制输出页面已编译部分内容
Response.Clear:将缓冲区内的数据清除
Response.Redirect URL:停止页面编译或输出,转载指定所需页面
Response.IsClientConnected:返回True&#124;False,检测用户是否还处于连接状态
Response.Charset(CharsetName):设置页面编码类型,即<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
Response.ContentType [= ContentType ]:设置页面文件类型,同上
Response.Expires [= number]:设置页面失效时间,单位分钟
Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间
Response.Status = StatusDescription:设置页面状态描述
Request:
Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式
Request[.collection&#124;property&#124;method](variable)
Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=value
Request.QueryString(Varible)[(Index).Count]
Request.form("PassStrName"):读取Post方法传递的纯表单域的值
Request.Form(Parameter)[(Index).Count]
Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考
Request.BinaryRead(Count):读取指定字节数的传送值
Request.TotalBytes:查询体的长度,以字节为单位,只读
注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值
Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要
Session:(用户全局变量)
Session("SesName")=value:存储Session变量值,也可读取该值
Session("SesName")=Empty:判断Session值是否存在的两种方法
IsEmpty(Session("SesName"))=True&#124;False:判断Session值是否存在的两种方法
Session.TimeOut=num:设置Session变量的存在时效,单位分钟
Session.Abandon:清除所有Session变量值
Session.SessionID:Session变量的ID序列号,只读
Application:(应用程序全局变量)
Application("AppName")=value:存储Application变量值,也可读取该值
Application("AppName")=Empty:判断Application值是否存在的两种方法
IsEmpty(Application("AppName"))=True&#124;False:判断Application值是否存在的两种方法
Application.Lock:Application变量值锁定,防止同时更改变量值
Application.UnLock:Application变量值解锁,允许更改变量值
注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,
但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量
Global.asa文件的结构:<% @language="VBscript"%>
<% Sub Application_OnStart ...End Sub
Sub Application_OnEnd ... End Sub
Sub Session_OnStart ...End Sub
Sub Session_OnEnd ... End Sub%>
Server:
Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径
Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等
Server.URLEncode( "string"):转换为浏览器地址编码
set Var=Server.CreatObject("ObjName"):创建对象变量
Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位
Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MB
Response.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值
Response.cookies("StrCookieName")="":判断是否为空
Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效
Response.Cookies(Cookie[(key).Attribute]):标准语法
ObjectContext 控制ASP的事务处理
ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生
ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生
ObjectContext.SetAbort:显式的放弃一次事务处理
ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用
Msgbox "string"/StrName:VBscript提示框
表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,
页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。
数据库连接字符串举例:
Access2000:
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("dbase/liuyan.mdb")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("dbase/liuyan.mdb")&";Password=admin"
Recordset.Open "数据表名", conn, 2, 2
SqlServer2000:
conn.Open "Provider=SQLOLEDB.1;User ID=sa;Password=admin;Initial Catalog=pubs;Data Source=server/garlmrm"
conn.Open "provider=SQLOLEDB;data source=hyserver;uid=sa;pwd=;database=pubs"
Recordset.Open StrSQL, conn, 2, 2
Dbase:(?)
conn Open "Driver={Microsoft dBase Driver};SourceType=DB;SourceDB=" & Server.MapPath( "目录名" )
Recordset.Open StrSQL, conn, 2, 2
FoxBase:
conn Open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=" & Server.MapPath( "目录名" )
Recordset.Open DBF文件名或Select语句, conn, 2, 2
conn Open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=" & Server.MapPath( "DBC数据库文件名" )
Recordset.Open DBF文件名或Select语句, conn, 2, 2
Excel:
conn Open "Driver={Microsoft Excel Driver (*.xls)};DBQ=" & Server.MapPath( "XLS文件名" )
Recordset.Open "Select * From ["&sheet&"$]",conn,2,2
注:使用DBF、DBC、Excel数据库,下面几点要注意:Excel数据库只能读取、增加记录、修改记录,但不能删除记录;
DBF、DBC可以读取记录、增加记录、删除记录、修改记录,但是在增加记录时,任何一个字段值都不能为空,由此
可看出局限性很大,所以尽可能地用MDB或SQL数据库。
SQL函数
SQL函数
使用SQL函数,您可以在一个SELECT语句的查询当中,直接计算数据库资料的平
均值、总数、最小值、最大值、总和、标准差、变异数等统计。使用Recordset对象
时,也可使用这些SQL函数。
SQL函数包括如下:
Avg函数:计算查询中某一特定字段资料的算术平均值。
Count函数:计算符合查询条件的记录数。
Min, Max函数:传回指定字段之中符合查询条件的第一条、最末条记录的资料。
First, Last函数:传回指定字段之中符合查询条件的最小值、最大值。
StDev函数:计算指定字段之中符合查询条件的标准差。
Sum函数:计算指定字段之中符合查询条件的资料总和。
Var,函数:计算指定字段之中符合查询条件的变异数估计值。
ADO如何使用SQL函数呢?
譬如ASP程式码rs21.asp,在用户端使用浏览器,浏览执行的结果,显示执行SQL函数
的结果。
ASP程式码rs21.asp如下:
<%
Set conn1 = Server.CreateObject("ADODB.Connection")
conn1.Open "DBQ=" & Server.MapPath("ntopsamp.mdb") & ";Driver=
{Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"
Set rs2 = Server.CreateObject("ADODB.Recordset")
SqlStr = "SELECT Avg(价格) As 平均 From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Avg: " & rs2("平均")
rs2.Close
SqlStr = "SELECT Count(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Count(价格): " & rs2(0)
rs2.Close
SqlStr = "SELECT Count(*) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Count(*): " & rs2(0)
rs2.Close
SqlStr = "SELECT Sum(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Sum: " & rs2(0)
rs2.Close
SqlStr = "SELECT Min(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Min: " & rs2(0)
rs2.Close
SqlStr = "SELECT Max(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Max: " & rs2(0)
rs2.Close
SqlStr = "SELECT First(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>First(价格): " & rs2(0)
rs2.Close
SqlStr = "SELECT Last(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Last(价格): " & rs2(0)
rs2.Close
SqlStr = "SELECT First(代号) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>First(代号): " & rs2(0)
rs2.Close
SqlStr = "SELECT Last(代号) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Last(代号): " & rs2(0)
rs2.Close
SqlStr = "SELECT StDev(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>StDev: " & rs2(0)
rs2.Close
SqlStr = "SELECT Var(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Var: " & rs2(0)
rs2.Close
conn1.Close
%>
SQL函数,详细描述如下:
Avg函数
Avg函数,计算查询中某一特定字段资料的算术平均值。
语法为Avg(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。
Avg函数在计算时,不包含任何值为 Null 的资料。
Count函数
Count函数,计算符合查询条件的记录条数。
语法为Count (运算式)。运算式,可为字段名称、*、多个字段名称、运算式、
或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。
Count 函数於计算时,不包含任何值为 Null 的资料。
但是,Count(*) 则计算所有符合查询条件的记录条数,包含那些Null的资料。
如果Count(字段名称) 的字段名称为多个字段,将字段名称之间使用 & 分隔。
多个字段当中,至少有一个字段的值不为Null的情况下,Count函数才会计算为一条
记录。如果多个字段都为Null,则不算是一条记录。譬如:
SELECT Count(价格 & 代号) From 产品
First/Last函数
First函数、Last函数,传回指定字段之中符合查询条件的第一条、最末条记录
的资料。
语法为First(运算式) 和 Last(运算式)。运算式,可为字段名称、运算式、或
一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。
Min/Max函数
Min函数、Max函数,传回指定字段之中符合查询条件的最小值、最大值。
ado如何使用sql函数?
语法为Min(运算式) 和 Max(运算式)。运算式,可为字段名称、运算式、或一个
函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。
StDev函数
StDev函数,计算指定字段之中符合查询条件的标准差。
语法为StDev(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数
可以是一个内部或使用者定义的,但不能为其它的SQL函数。
如果符合查询条件的记录为两个以下时,StDev函数将传回一个Null 值,该表示
不能计算标准差。
Sum函数
Sum函数,计算指定字段之中符合查询条件的资料总和。
语法为Sum(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。
Sum函数可使用两个字段资料运算式,譬如计算产品的单价及数量字段的合计:
SELECT Sum(单价 * 数量) FROM 产品
Var函数
Var函数,计算指定字段之中符合查询条件的变异数估计值。
语法为Var(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。
如果符合查询条件的记录为两个以下时,Var函数将传回一个Null 值,该表示不
能计算变异数。
Dim bian1,biang2
const chang1,chang2
erase
erase array
exit
exit do
exit for
exit function
exit sub
option explicit 强制详细定义变量
select case
VBscript常用函数:
1.数值型函数:
abs(num): 返回绝对值
sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负
hex(num): 返回十六进制值 直接表示:&Hxx 最大8位
oct(num): 返回八进制值 直接表示:&Oxx 最大8位
sqr(num): 返回平方根 num>0
int(num): 取整 int(99.8)=99;int(13.2)=13;int(-13.9)=-14; int(-13.2)=-14;int(-99.2)=-100 ;
当num为整数时,截尾取整,当num为负数时,加满去整。
fix(num): 取整 fix(99.8)=99; fix(-99.2)=-99 fix为截尾取整。
round(num,n): 四舍五入(小于等于5舍,大于5入)取小数位 round(3.14159,3)=3.142 ;(须大于5才入)round(3.25,1)=3.2
log(num): 取以e为底的对数 num>0
exp(n): 取e的n次幂 通常用 num^n
sin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num); tan(num); atn(num)
2.字符串函数:
len(str):计算字符串长度 中文字符长度也计为一!
mid(str,起始字符,[读取长度]):截取字符串中间子字符串 ,起始字符从1开始。
left(str,nlen):从左边起截取nlen长度子字符串
right(str,nlen):从右边起截取nlen长度子字符串
Lcase(str):字符串转成小写
Ucase(str):字符串转成大写
trim(str):去除字符串两端空格
Ltrim(str):去除字符串左侧空格
Rtrim(str):去除字符串右侧空格
replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串
注:默认值:起始字符 1;替代次数 不限;比较方法 区分大小写(0)
InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串 可选参数需同时选 返回起始位置
InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串 返回起始位置
注:instrrev与instr的运行结果是一样的。
space(n):构造n个空格的字符串
string(n,str):构造由n个str第一个字符组成的字符串
StrReverse(str):反转字符串
split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组 可选参数需同时选
3.数据类型转换函数:
Cint(str):转换为数字。str不能为日期格式。
Cstr(str):
Clng(str):转换为长整型。
Cbool(num):num不为零 True;反之 False
Cdate(str):str可以为后面几种格式:1.Am 12:00:00;2.正数 距离1899/12/31天数的日期;3.1980年9月3日 AM 12:30:2;4.1980/09/23 PM 2:23:32
Cbyte(num):num<255 转换为字节
Csng(str):转换为单精度数值
Cdbl(str):转换为双精度数值
Ccur(str):转换为现金格式
4.时间函数:
注意:参数date表示日期型数据,参数time表示时间型数据,参数datetime表示日期时间型数据。不同的参数不能随便混用,有可能导致出错。
date:取系统当前日期
time:取系统当前时间
now:取系统当前时间及日期值 Datetime类型
timer:取当前时间距离零点秒值,计时器,可计算时间差
DateAdd(间隔单位,间隔值,日期):推算相邻日期 。间隔单位为字符常量,"yyyy"表示年,"q"表示季,"m"表示月,"y","d","w"都表示日,"ww"表示周,"h","n","s"分别是时,分,秒。
DateDiff(间隔单位,日期一,日期二):计算时间差 日期二-日期一
Datepart(间隔单位,日期):计算日期的间隔单位值
Dateserial(date):输出日期值(按序列计算)
Timeserial(time):输出时间值(按序列计算)
DateValue(datetime):取出字符串中日期值
Timevalue(datetime):取出字符串中时间值
weekday(date):计算星期几
MonthName(date):输出月分名
year(datetime):截取年份
month(datetime):截取月份
day(datetime):截取日
hour(datetime):截取小时
minute(datetime):截取分钟
second(datetime):截取秒
5.其它函数:
Array(unit,..):动态生成数组
Asc(str):输出字符串第一个字符的ASCII码
Chr(asc):转换ASCII为字符 Enter:Chr(13)&Chr(10)
Filter(数组名称,关键字符串,[,包含][,比较方法]):
将字符串数组中含有关键字符串的元素存成新的数组(默认) [包含]为false则取不包含的元素
Join(ArrayName):将数组中元素连成字符串
Ubound(ArrayName[,维数]):取得数组相应维数的上界
Lbound(ArrayName[,维数]):取得数组相应维数的下界 一般为0
Randmize n:启动随机数种子
Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数
取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)
子程序和自定义函数
Sub StrSubName Function StrFunName(arg[1],..)
子程序体 函数体
Exit Sub 中途跳出 Exit Function 中途跳出
End Sub StrFunName=Value 返回值
End Function
[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数
子程序和自定义函数可以递归调用;
ASP六大对象常用语句示范:
Response:
Response.write StrVar/"String":向网页写出参数值或字符串 等同于在Html标记中嵌入<%=StrVar/"String"%>
Response.End:停止页面编译,并将已经编译内容输出到浏览器
Response.Buffer=True&#124;False:页面编译时是否使用缓存的设置,一般在页面头部设置
Response.Flush:强制输出页面已编译部分内容
Response.Clear:将缓冲区内的数据清除
Response.Redirect URL:停止页面编译或输出,转载指定所需页面
Response.IsClientConnected:返回True&#124;False,检测用户是否还处于连接状态
Response.Charset(CharsetName):设置页面编码类型,即<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
Response.ContentType [= ContentType ]:设置页面文件类型,同上
Response.Expires [= number]:设置页面失效时间,单位分钟
Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间
Response.Status = StatusDescription:设置页面状态描述
Request:
Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式
Request[.collection&#124;property&#124;method](variable)
Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=value
Request.QueryString(Varible)[(Index).Count]
Request.form("PassStrName"):读取Post方法传递的纯表单域的值
Request.Form(Parameter)[(Index).Count]
Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考
Request.BinaryRead(Count):读取指定字节数的传送值
Request.TotalBytes:查询体的长度,以字节为单位,只读
注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值
Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要
Session:(用户全局变量)
Session("SesName")=value:存储Session变量值,也可读取该值
Session("SesName")=Empty:判断Session值是否存在的两种方法
IsEmpty(Session("SesName"))=True&#124;False:判断Session值是否存在的两种方法
Session.TimeOut=num:设置Session变量的存在时效,单位分钟
Session.Abandon:清除所有Session变量值
Session.SessionID:Session变量的ID序列号,只读
Application:(应用程序全局变量)
Application("AppName")=value:存储Application变量值,也可读取该值
Application("AppName")=Empty:判断Application值是否存在的两种方法
IsEmpty(Application("AppName"))=True&#124;False:判断Application值是否存在的两种方法
Application.Lock:Application变量值锁定,防止同时更改变量值
Application.UnLock:Application变量值解锁,允许更改变量值
注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,
但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量
Global.asa文件的结构:<% @language="VBscript"%>
<% Sub Application_OnStart ...End Sub
Sub Application_OnEnd ... End Sub
Sub Session_OnStart ...End Sub
Sub Session_OnEnd ... End Sub%>
Server:
Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径
Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等
Server.URLEncode( "string"):转换为浏览器地址编码
set Var=Server.CreatObject("ObjName"):创建对象变量
Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位
Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MB
Response.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值
Response.cookies("StrCookieName")="":判断是否为空
Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效
Response.Cookies(Cookie[(key).Attribute]):标准语法
ObjectContext 控制ASP的事务处理
ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生
ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生
ObjectContext.SetAbort:显式的放弃一次事务处理
ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用
Msgbox "string"/StrName:VBscript提示框
表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,
页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。
数据库连接字符串举例:
Access2000:
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("dbase/liuyan.mdb")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("dbase/liuyan.mdb")&";Password=admin"
Recordset.Open "数据表名", conn, 2, 2
SqlServer2000:
conn.Open "Provider=SQLOLEDB.1;User ID=sa;Password=admin;Initial Catalog=pubs;Data Source=server/garlmrm"
conn.Open "provider=SQLOLEDB;data source=hyserver;uid=sa;pwd=;database=pubs"
Recordset.Open StrSQL, conn, 2, 2
Dbase:(?)
conn Open "Driver={Microsoft dBase Driver};SourceType=DB;SourceDB=" & Server.MapPath( "目录名" )
Recordset.Open StrSQL, conn, 2, 2
FoxBase:
conn Open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=" & Server.MapPath( "目录名" )
Recordset.Open DBF文件名或Select语句, conn, 2, 2
conn Open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=" & Server.MapPath( "DBC数据库文件名" )
Recordset.Open DBF文件名或Select语句, conn, 2, 2
Excel:
conn Open "Driver={Microsoft Excel Driver (*.xls)};DBQ=" & Server.MapPath( "XLS文件名" )
Recordset.Open "Select * From ["&sheet&"$]",conn,2,2
注:使用DBF、DBC、Excel数据库,下面几点要注意:Excel数据库只能读取、增加记录、修改记录,但不能删除记录;
DBF、DBC可以读取记录、增加记录、删除记录、修改记录,但是在增加记录时,任何一个字段值都不能为空,由此
可看出局限性很大,所以尽可能地用MDB或SQL数据库。
SQL函数
SQL函数
使用SQL函数,您可以在一个SELECT语句的查询当中,直接计算数据库资料的平
均值、总数、最小值、最大值、总和、标准差、变异数等统计。使用Recordset对象
时,也可使用这些SQL函数。
SQL函数包括如下:
Avg函数:计算查询中某一特定字段资料的算术平均值。
Count函数:计算符合查询条件的记录数。
Min, Max函数:传回指定字段之中符合查询条件的第一条、最末条记录的资料。
First, Last函数:传回指定字段之中符合查询条件的最小值、最大值。
StDev函数:计算指定字段之中符合查询条件的标准差。
Sum函数:计算指定字段之中符合查询条件的资料总和。
Var,函数:计算指定字段之中符合查询条件的变异数估计值。
ADO如何使用SQL函数呢?
譬如ASP程式码rs21.asp,在用户端使用浏览器,浏览执行的结果,显示执行SQL函数
的结果。
ASP程式码rs21.asp如下:
<%
Set conn1 = Server.CreateObject("ADODB.Connection")
conn1.Open "DBQ=" & Server.MapPath("ntopsamp.mdb") & ";Driver=
{Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"
Set rs2 = Server.CreateObject("ADODB.Recordset")
SqlStr = "SELECT Avg(价格) As 平均 From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Avg: " & rs2("平均")
rs2.Close
SqlStr = "SELECT Count(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Count(价格): " & rs2(0)
rs2.Close
SqlStr = "SELECT Count(*) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Count(*): " & rs2(0)
rs2.Close
SqlStr = "SELECT Sum(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Sum: " & rs2(0)
rs2.Close
SqlStr = "SELECT Min(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Min: " & rs2(0)
rs2.Close
SqlStr = "SELECT Max(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Max: " & rs2(0)
rs2.Close
SqlStr = "SELECT First(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>First(价格): " & rs2(0)
rs2.Close
SqlStr = "SELECT Last(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Last(价格): " & rs2(0)
rs2.Close
SqlStr = "SELECT First(代号) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>First(代号): " & rs2(0)
rs2.Close
SqlStr = "SELECT Last(代号) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Last(代号): " & rs2(0)
rs2.Close
SqlStr = "SELECT StDev(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>StDev: " & rs2(0)
rs2.Close
SqlStr = "SELECT Var(价格) From 产品"
rs2.Open SqlStr,conn1,1,1
Response.Write "<BR>Var: " & rs2(0)
rs2.Close
conn1.Close
%>
SQL函数,详细描述如下:
Avg函数
Avg函数,计算查询中某一特定字段资料的算术平均值。
语法为Avg(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。
Avg函数在计算时,不包含任何值为 Null 的资料。
Count函数
Count函数,计算符合查询条件的记录条数。
语法为Count (运算式)。运算式,可为字段名称、*、多个字段名称、运算式、
或一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。
Count 函数於计算时,不包含任何值为 Null 的资料。
但是,Count(*) 则计算所有符合查询条件的记录条数,包含那些Null的资料。
如果Count(字段名称) 的字段名称为多个字段,将字段名称之间使用 & 分隔。
多个字段当中,至少有一个字段的值不为Null的情况下,Count函数才会计算为一条
记录。如果多个字段都为Null,则不算是一条记录。譬如:
SELECT Count(价格 & 代号) From 产品
First/Last函数
First函数、Last函数,传回指定字段之中符合查询条件的第一条、最末条记录
的资料。
语法为First(运算式) 和 Last(运算式)。运算式,可为字段名称、运算式、或
一个函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。
Min/Max函数
Min函数、Max函数,传回指定字段之中符合查询条件的最小值、最大值。
ado如何使用sql函数?
语法为Min(运算式) 和 Max(运算式)。运算式,可为字段名称、运算式、或一个
函数,此函数可以是一个内部或使用者定义的,但不能为其它的SQL函数。
StDev函数
StDev函数,计算指定字段之中符合查询条件的标准差。
语法为StDev(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数
可以是一个内部或使用者定义的,但不能为其它的SQL函数。
如果符合查询条件的记录为两个以下时,StDev函数将传回一个Null 值,该表示
不能计算标准差。
Sum函数
Sum函数,计算指定字段之中符合查询条件的资料总和。
语法为Sum(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。
Sum函数可使用两个字段资料运算式,譬如计算产品的单价及数量字段的合计:
SELECT Sum(单价 * 数量) FROM 产品
Var函数
Var函数,计算指定字段之中符合查询条件的变异数估计值。
语法为Var(运算式)。运算式,可为字段名称、运算式、或一个函数,此函数可
以是一个内部或使用者定义的,但不能为其它的SQL函数。
如果符合查询条件的记录为两个以下时,Var函数将传回一个Null 值,该表示不
能计算变异数。
相关文章推荐
- VBS基本语法
- Vbs的基本语法
- ◎Vbs脚本编程简明教程之三—Vbs的基本语法(牢记)
- ◎Vbs脚本编程简明教程之三—Vbs的基本语法(牢记)
- Markdown基本语法
- shell基本语法及应用
- VBS语法:ByRef and ByVal Parameters
- sql总结1--基本语法
- Linq基本子句介绍-语法之where
- 浅谈MVC Razor基本语法
- mysql基本的语法/语句
- sql(SqlServer)编程基本语法
- SQL Server存储过程基本语法
- Kotlin Primer·第二章·基本语法
- C 语言基本语法示例
- 选择Python版本并在Windows上安装Python + Python基本语法(会持续更新)
- lua基础——基本语法
- SASS基础教程——SASS基本语法与特性
- Python基本语法
- Java程序员从笨鸟到菜鸟之(一)开发环境搭建,基本语法,字符串,数组