|
|
ACCESS中的“存储过程”(其实应该不是严格意义上的存储过程) 其实在ACCESS中也可以使用存储过程的,这样的话大家就不必再 为不能够使用ACCESS自带的一些SQL语句而发愁了,因为使用ADO 的命令对象,你可以很方便的使用ACCESS自己的SQL语法,这样能够 很大的提高使用ACCESS数据库的网站的性能。 在ASP中可以调用ACCESS中的“存储过程”,它的执行效率要优于简单的 查询语句。其实我个人认为这并不是严格意义上的存储过程的,就是有别与 SQL Server,Oracle等数据库中的存储过程的。 首先介绍在ACCESS中怎么建立一个“存储过程” 打开你的数据库,选择新建一个查询,关闭“显示表”对话框而不指定表或查询。 然后切换到 SQL 视图,现在使用以下格式就能够建立一个查询了。(就是一个简单 的“存储过程”了,呵呵)至少现在大家可以使用许多ACCESS才带有的专门功能了, 例如ACCESS的子表功能,很好使的说。 一般查询语法如下: PARAMETERS [inid] Text; SELECT * from 。。。。。 语法很简单,可以直接看ACCESS自带的帮助文件(查关键字PARAMETERS)。
下面介绍怎么在ASP中调用ACCESS的“存储过程” <%@ Language=VBScript %> <% Dim cnn1 Dim cmdNyttSvarID Dim prmNyttSvarID Dim rstNyttSvarID Dim strID Dim strCnn Dim strSize Dim i Dim tmpFields Dim strName Dim strTable Set cnn1 = Server.CreateObject ("ADODB.Connection") strCnn = "DSN=agenda21" cnn1.Open strCnn cnn1.CursorLocation = adUseClient Set cmdNyttSvarID = Server.CreateObject ("ADODB.Command") '你的查询名 cmdNyttSvarID.CommandText = "nyttsvarid" cmdNyttSvarID.CommandType = adCmdStoredProc '给初始参数值 strID = "00001" strSize = Len(strID) '参数名 strName = "inid" '建立命令对象所需参数 Set prmNyttSvarID = cmdNyttSvarID.CreateParameter(strName, adVarChar, adParamInput,strSize,strID) cmdNyttSvarID.Parameters.Append prmNyttSvarID prmNyttSvarID.Value = strID Set cmdNyttSvarID.ActiveConnection = cnn1 Set rstNyttSvarID = cmdNyttSvarID.Execute i = 1 Do While Not rstNyttSvarID.EOF Response.Write ("<BR>") For Each tmpField In rstNyttSvarID.Fields Response.Write (tmpField.Name & ":" & tmpField.Value & ",") Next rstNyttSvarID.MoveNext Loop rstNyttSvarID.Close cnn1.Close %>
|
|