亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

用存儲過程實現ASP對數據庫訪問

2019-11-18 19:25:29
字體:
來源:轉載
供稿:網友
一、ADO概述
ActiveX 數據對象 (ADO) 是一種既易于使用又可擴充的技術,用來將數據庫訪問添加到您的 Web 頁可以使用 ADO 編寫簡潔和可升級的腳本以連接到與 OLE DB 兼容的數據源,如數據庫、電子表格、順序數據文件或電子郵件目錄。OLE DB 是一個系統級的編程接口,它提供一套標準的 COM 接口,用來展示數據庫管理系統的功能。使用 ADO 的對象模型,您可以輕松地(使用 VBScript 或 JScript 等腳本語言)訪問這些接口并將數據庫功能添加到您的 Web 應用程序中。另外,您還可以使用 ADO 訪問與開放式數據庫互連 (ODBC) 兼容的數據庫。
如果您是一位對數據庫互連知識有一定了解的腳本編寫者,您將會發現 ADO 的命令語法很簡單,而且很容易使用。如果您是一位經驗豐富的開發人員,您將會非常欣賞 ADO 提供的這種可升級的對各種數據源的高性能訪問。
二、訪問數據庫的一般方法
一般的網頁訪問中訪問數據庫是按照下列步驟進行的,首先建立一個ADODB.Connection 接口的對象,接著在這一個對象上綁定相應的數據源(可以用有名數據源和無名數據源),根據需要建立或者不建立記錄集,然后在該數據源上鏈接用執行或打開的方法來對相應的表進行操作。
asp訪問數據庫的一般方法:
<
Set oConn=Server.CreateObject(“ADODB.Connection”)
Set oRS=Server.CreateObject(“ADODB.RecordSet”)
set strConn="PRovider=SQLOLEDB;User ID=sa; Initial Catalog=Pubs;Data Source=" &request.ServerVariables("SERVER_NAME")
oConn.open strConn
set ORS=oConn.execute(“select * from test”)
>
以上介紹了無名鏈接的OLEDB的使用方法,如果是有名鏈接,設為數據源test,用戶名和口令均為空,則只需要改寫一下上述語句oConn.open “test”,””,””
上面簡要介紹了一下對于網頁中涉及到數據庫訪問的一般方法,這些已經是很成熟的,也是很有用的,如果在實際中對于某些數據的存取過于復雜,需要近10條SQL語句才能寫完,那么這種方法就有點欠缺,另外有些時候需要使用相同的處理過程,而在不同的網頁中使用,而這用存儲過程則是最有利的,還有一個最大特點是存儲過程對于技術的保密性相對高些,它存儲于遠端服務器的數據庫內。
三、存儲過程在ASP中的使用
在ADO中提供了對存儲過程的訪問,它需要用到command對象,在這個對象上用戶可以直接執行SQL服務器的存儲過程,而命令中所需要的參數可以借助于其屬性Pamaters來進行處理。
注意 一個 Command 對象要想有效,必須和一個 Connection 對象相關聯,方法是Command 對象的 ActiveConnection 屬性就被設置到這個 Connection 對象。如果一個 Connection 對象不能被標識,在您將它與一個連接關聯之前,Command 對象是無效的。
< Dim oConn 
Dim strConn 
Dim oCmd 
Dim oRs,ors1 
dim aa
dim sql
Set oConn = Server.CreateObject("ADODB.Connection")
set oCmd = Server.CreateObject("ADODB.Command")
set ors1=Server.CreateObject("ADODB.RecordSet")
' 打開鏈接,使用用戶標識SA,口令為空,連接為本地服務器上的數據庫
strConn="Provider=SQLOLEDB;User ID=sa;Initial Catalog=pubs;Data Source="& Request.ServerVariables("SERVER_NAME")
'如果連接一個遠端的數據庫,該數據庫地址為:10.82.88.105,用戶為tmp,口令為123,
‘則可用下面的方法
‘ strConn="Provider=SQLOLEDB;User ID=tmp;pwd=123;Initial Catalog=tjbb;Data Source="& "10.82.88.110"
oConn.Open strConn
‘將建立的鏈接添加到命令的活動鏈接屬性中
Set oCmd.ActiveConnection = oConn
' 設置調用存儲過程byroyalty和參數,參數由?引入
oCmd.CommandText = "{call byroyalty(?)}"
oCmd.Parameters.Append oCmd.CreateParameter("@Percentage", adInteger, adParamInput)
' 提供輸入的參數
oCmd("@Percentage") = 75
‘在asp中上述輸入參數的使用也可不用參數屬性來實現直接用VB中的&來形成命令文本中對應的數據即可
‘參數的使用在輸出時是特別有用的
Set oRs = oCmd.Execute 
ors1.activeconnection=oconn 
‘該命令對象中也可應用一般的SQL語句使用Source和open屬性,其中source指出數據源
ors1.source ="select * from [tmptable] where 年份=2000 and 月份=1"
ors1.cursortype=adopenstatic 
ors1.open
>
四、在SQL中的存儲過程簡介
利用SQL的語言可以編寫對于數據庫訪問的存儲過程,其語法如下:
CREATE PROC[EDURE] procedure_name [;number]
[
{@parameter data_type} [VARYING] [= default] [OUTPUT]
]
[,...n]
[WITH 
{
RECOMPILE 
| ENCRYPTION 
| RECOMPILE, ENCRYPTION
}
]
[FOR REPLICATION]
AS
sql_statement [...n]
[ ]內的內容是可選項,而()內的內容是必選項,
例: 若用戶想建立一個刪除表tmp中的記錄的存儲過程Select_delete可寫為:
Create Proc select_del As 
Delete tmp 
例:用戶想查詢tmp表中某年的數據的存儲過程
create proc select_query @year int as
select * from tmp where year=@year
在這里@year是存儲過程的參數
例:該存儲過程是從某結點n開始找到最上層的父親結點,這種經常用到的過程可以由存儲過程來擔當,在網頁中重復使用達到共享。
空:表示該結點為頂層結點
fjdid(父結點編號) 
結點n 非空:表示該結點的父親結點號
dwmc(單位名稱)
CREATE proc search_dwmc @dwidold int,@dwmcresult varchar(100) output
as 
declare @stop int
declare @result varchar(80)
declare @dwmc varchar(80)
declare @dwid int
set nocount on
set @stop=1
set @dwmc=""
select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold 
set @result=rtrim(@dwmc)
if @dwid=0 
set @stop=0
while (@stop=1) and (@dwid<>0)
begin
set @dwidold=@dwid
select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold
if @@rowcount=0 
set @dwmc=""
else
set @result=@dwmc+@result
if (@dwid=0) or (@@rowcount=0) 
set @stop=0
else
continue
end
set @dwmcresult=rtrim(@result)
充分合理地利用存儲過程,可以提高服務器吞吐能力,筆者利用存儲過程來從近20個表中獲取數據組合成一個通用的表,產生近2萬條記錄,而所需時間約7秒鐘,如果這種操作借助于較合理的動態網頁可以將服務器開發提高到一個高度,充分利用存儲過程,可以減輕網頁設計帶來的繁重處理,而使所編寫的代碼得到共享和合理的利用,并將代碼藏于服務器的數據庫內部,使得一些技術得到的保密,這也是存儲過程的一大特色,希望讀者能從中得到啟益。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日本欧美一区二区三区在线| 亚洲自拍偷拍色片视频| 亚洲美女久久久| 欧美一级大胆视频| 欧美成人精品在线| 国产精品一区二区性色av| 亚洲第一av在线| 国产精品福利小视频| 亚洲成人a级网| 日韩av电影院| 久久精品国产亚洲精品2020| y97精品国产97久久久久久| 国产又爽又黄的激情精品视频| 精品女厕一区二区三区| 成人精品视频久久久久| 亚洲xxx大片| 欧美日韩一区二区精品| 国产在线播放91| 欧美日韩国产色| 久久久久久高潮国产精品视| 欧美劲爆第一页| 国产精品久久久久久亚洲影视| 欧美电影免费观看电视剧大全| 日韩免费av片在线观看| 欧美激情乱人伦一区| 国产精品96久久久久久又黄又硬| 日韩成人黄色av| 国产精品久久综合av爱欲tv| 成人在线中文字幕| 91精品在线国产| 欧美一级大片在线观看| 国产精品电影在线观看| 国产精品久久久久久五月尺| 日本乱人伦a精品| 亚洲视频在线观看网站| 国外成人在线播放| 欧美黑人极品猛少妇色xxxxx| 欧美大片大片在线播放| 久久久99免费视频| 国产日韩换脸av一区在线观看| 狠狠色狠狠色综合日日五| 久久人人爽人人爽人人片av高请| 日韩高清免费观看| 成人a视频在线观看| 欧美综合国产精品久久丁香| 成人欧美一区二区三区黑人孕妇| 亚洲人成电影网站色| 欧美极品xxxx| 久久成人这里只有精品| 国产精品专区一| 中文字幕日韩欧美| 亚洲人成电影网站色…| 欧美另类精品xxxx孕妇| 日韩最新av在线| 欧美久久精品午夜青青大伊人| 色综合色综合网色综合| 亚洲成**性毛茸茸| 高清日韩电视剧大全免费播放在线观看| 国产suv精品一区二区| 久久人人爽人人爽爽久久| 亚洲人成亚洲人成在线观看| 久久精品国产亚洲一区二区| 国产精品视频区1| 亚洲欧美日韩爽爽影院| 色av吧综合网| 中文字幕日韩精品在线观看| 成人av在线天堂| 亚洲欧美综合区自拍另类| 亚洲欧美国产精品va在线观看| 欧美成人精品在线播放| 91高清免费在线观看| 国产成人极品视频| 国产在线a不卡| 亚洲精品日韩久久久| 91精品国产91久久久久久最新| www.亚洲男人天堂| 日韩成人在线观看| 麻豆精品精华液| 欧美一乱一性一交一视频| 秋霞av国产精品一区| 大桥未久av一区二区三区| 欧美日韩美女在线| 国产成人涩涩涩视频在线观看| 成人黄色在线观看| 亚洲国产精久久久久久久| 久久精品视频亚洲| 91精品国产综合久久香蕉922| 日韩成人av在线播放| 亚洲a在线播放| 亚洲日本中文字幕免费在线不卡| 日韩美女av在线免费观看| 国产69精品99久久久久久宅男| 欧美黄色小视频| 欧美激情影音先锋| 欧美午夜片欧美片在线观看| 性色av一区二区三区在线观看| 欧美成人在线免费| 97不卡在线视频| 亚洲精品国产精品久久清纯直播| 亚洲国产精品久久久久秋霞不卡| 国产z一区二区三区| 狠狠躁夜夜躁人人躁婷婷91| 国产成人亚洲精品| 日韩电影中文 亚洲精品乱码| 亚洲欧洲国产伦综合| 午夜精品国产精品大乳美女| 亚洲激情视频在线播放| 欧美视频免费在线观看| 高跟丝袜一区二区三区| 久久国产精品电影| 色妞欧美日韩在线| 在线观看精品自拍私拍| 欧美激情a∨在线视频播放| 欧美激情国产日韩精品一区18| 伊人久久男人天堂| 久久99青青精品免费观看| 69久久夜色精品国产69乱青草| 日韩中文第一页| 国产精品亚洲视频在线观看| 在线播放日韩欧美| 国产第一区电影| 自拍偷拍亚洲欧美| 精品久久久香蕉免费精品视频| 亚洲欧美一区二区三区情侣bbw| 亚洲欧美制服中文字幕| 欧美精品免费在线| 国产精品一区二区三区在线播放| 69影院欧美专区视频| 日本国产一区二区三区| 亚洲一区二区三区777| 欧美孕妇与黑人孕交| 国产成人一区二区三区| www.日韩av.com| 欧美成人性色生活仑片| 在线激情影院一区| 久久久久女教师免费一区| 97人人爽人人喊人人模波多| 亚洲欧洲在线播放| 成人xxxx视频| 26uuu国产精品视频| 国产成人中文字幕| 人人爽久久涩噜噜噜网站| 粉嫩av一区二区三区免费野| 中文字幕日韩精品在线观看| 中文字幕日韩av| 成人国产精品久久久| 亚洲xxx自由成熟| 久久久亚洲国产天美传媒修理工| 欧美在线精品免播放器视频| 亚洲免费av电影| 国产精品一区二区久久| 一区二区三区四区视频| 精品视频偷偷看在线观看| 国语自产在线不卡| 久久99热这里只有精品国产| 国产精品视频999| 欧美日韩免费区域视频在线观看| 欧美在线观看一区二区三区| 亚洲人成五月天| 日韩中文字幕免费看| 欧美成人激情视频| 国产97在线亚洲| 欧美极品美女视频网站在线观看免费| 91精品视频免费看|