麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

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

運用ASP調用數據庫中視圖及存儲過程

2019-11-18 16:39:55
字體:
來源:轉載
供稿:網友

一、前言

asp (Active Server Pages) 是服務器端的腳本編寫環境,它由微軟公司的IIS3.0以上版本支持。它可用來創建動態 Web 頁或生成功能強大的 Web應用程序。ASP頁是包括 HTML 標記、文本和腳本命令的文件。ASP頁可調用ActiveX組件來執行任務,例如連接到數據庫或進行商務計算。通過ASP,可為您的Web頁添加交互內容或用HTML頁構成整個Web應用程序,這些應用程序使用HTML頁作為您的客戶的界面。

二、ASP模型

瀏覽器從Web服務器上請求 .asp文件時,ASP 腳本開始運行。然后Web服務器調用ASP,ASP全面讀取請求的文件,執行所有腳本命令,并將Web頁傳送給瀏覽器。

ASP提供了一個在HTML頁中使用現有腳本語言如 Microsoft VBScript 和 Microsoft JScript 的框架。

ASP提供內建對象,這些對象使用戶更容易收集通過瀏覽器請求發送的信息、響應瀏覽器以及存儲用戶信息。包括application、Request、Response、Server、session 和ObjectContext 對象。其中最為常用的為Request、Response 和Server三個對象,它們分別用于從瀏覽器請求信息、向瀏覽器發送信息和訪問服務器上對象的屬性和方法。

三、ADO

ASP和后臺數據庫連接使用微軟的ADO(ActiveX Data Objects),ADO是一項容易使用并且可擴展的將數據庫訪問添加到Web頁的技術。可以使用ADO去編寫緊湊簡明的腳本以便連接到Open Database Connectivity(ODBC)兼容的數據庫和 OLE DB兼容的數據源。

ADO包含7個內置對象,它們分別為Connection、Command、RecordSet、Fields、Error、Parameters和PRoperties。通過這些對象,ASP可以完成對后臺數據庫的所有操作。

四、ASP調用視圖和存儲過程

在一般的MIS應用中,會有大量的報表,此時我們可以在后臺數據庫編寫相應的視圖或存儲過程,用ASP通過ADO調用以完成報表工作。下面用一個例子說明相應的操作過程。

1.創建 ODBC DSN 文件

在創建數據庫腳本之前,必須提供一條使ADO定位、標識和與數據庫通訊的途徑。數據庫驅動程序使用Data Source Name (DSN) 定位和標識特定的ODBC兼容數據庫,將信息從 Web 應用程序傳遞給數據庫。

2. 調用數據庫視圖

訪問數據庫信息的第一步是和數據庫源建立連接。ADO提供Connection對象,可以使用該對象建立和管理應用程序和 ODBC數據庫之間的連接。


<%
Set Dataconn = Server.CreateObject("ADODB.Connection") '建立連接對象
    Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;
UID=sa;PWD=;APP=Microsoft (R) Developer Studio;WSID=APP_SERVER;Regional=Yes"
    Set cmdTemp = Server.CreateObject("ADODB.Command") '建立命令對象
    Set rst= Server.CreateObject("ADODB.Recordset") '建立記錄集對象
    cmdTemp.CommandText = "Customers "
    cmdTemp.CommandType = 2
    Set cmdTemp.ActiveConnection = DataConn
    rst.Open cmdTemp, , 1, 3 '生成查詢結果
%>
 

此時,Customers為視圖,從視圖中查詢數據與從基表中查詢數據的方法是相同的。

3.調用數據庫存儲過程


<%
Set Dataconn = Server.CreateObject("ADODB.Connection") '建立連接對象
Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;
PWD=;APP=Microsoft (R) Developer Studio;WSID=APP_SERVER;Regional=Yes"
Set cmdTemp = Server.CreateObject("ADODB.Command") '建立命令對象
Set rst = Server.CreateObject("ADODB.Recordset") '建立記錄集對象
cmdTemp.CommandText = "dbo.pd_test" '存儲過程名稱
cmdTemp.CommandType = 4 '命令類別為4,表示為存儲過程
Set cmdTemp.ActiveConnection = Dataconn
Set tmpParam = cmdTemp.CreateParameter("Return Value", 3, 4, 4)
cmdTemp.Parameters.Append tmpParam
Set tmpParam = cmdTemp.CreateParameter("@BeginDate", 135, 1, 16, riqi)
'創建輸入參數對象
cmdTemp.Parameters.Append tmpParam
rst.Open cmdTemp, , 1, 3    '生成查詢結果
%>
 

這里調用的存儲過程為pd_test,這種是ADO中提供的標準方法,但存在一個問題,就是當在存儲過程中有兩個以上的SELECT語句,但從邏輯上又不可能同時執行的時候,ADO會提示你存儲過程中SELECT語句太多,解決方法是直接用ADO的CONNECTION對象的EXECUTE方法直接執行存儲過程,如下:


<%
Set Dataconn = Server.CreateObject("ADODB.Connection") '建立連接對象
Dataconn.Open "DSN=SinoTrans;SERVER=APP_SERVER;UID=sa;PWD=;
APP=Microsoft (R) Developer Studio;WSID=APP_SERVER;Regional=Yes"
ss = "EXECUTE dbo.pd_test " & "'" & riqi1 & "'"
Set rs = dataconn.Execute(ss)
%>
 

  
有關ASP和ADO使用的詳細信息,請參閱 Microsoft ActiveX Data Objects (ADO) 和Active Server Pages(ASP)的詳細參考。

五、結束語

在B/S結構的開發中,我們可以把一些商業規則或復雜查詢用存儲過程在DBMS中編寫,然后用ASP中的ADO對象調用,完成原來C/S結構中的傳統功能。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产自在自线午夜精品视频在 | 国产一级毛片高清视频完整版 | 91九色网址 | 日韩黄色免费观看 | 中文字幕在线观看1 | 色猫av | 91国在线高清视频 | 99sesese| 成片免费观看大全 | 亚洲一区二区国产 | 国产一级一片免费播放 | 91看片淫黄大片欧美看国产片 | 亚洲看片网 | 欧美黄色性生活视频 | 欧美成人一区二区三区 | 久久探花| 久久影院一区二区三区 | 免费91在线 | 国产精品久久久久久久午夜片 | 黄色免费高清网站 | av中文在线观看 | 亚洲第一页视频 | 久久精品在线免费观看 | 久久精品亚洲成在人线av网址 | 精品国产一区二区三区四 | 国产成人精品区 | 九九热九九热 | 国产精选电影免费在线观看 | 粉嫩蜜桃麻豆免费大片 | 国产精品久久久久久久久久东京 | 久久精品日韩一区 | 欧美视频一区二区三区四区 | 涩涩激情网| 91福利免费观看 | 一级黄色片武则天 | 亚洲一区二区三区91 | 黄色一级片在线观看 | 久久精品站 | 在线日韩亚洲 | 茄子福利视频 | 久久草草亚洲蜜桃臀 |