免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
ASP 連接字符串 .

一、存取數(shù)據(jù)庫的原理

在ASP中,用來存取數(shù)據(jù)庫的對象統(tǒng)稱ADO對象(Active Data Objects),主要含有三種對象:Connection、Recordset和Command,其中Connection負責打開或連接數(shù)據(jù)庫,Recordset負責存取數(shù)據(jù)表,Command負責對數(shù)據(jù)庫執(zhí)行行動查詢(Action Query)命令和執(zhí)行SQL Server的Stored Procedure。只依靠這三個對象還是無法存取數(shù)據(jù)庫的,還必須具有數(shù)據(jù)庫存取的驅(qū)動程序:OLE DB驅(qū)動程序和ODBC驅(qū)動程序。對于任何一種數(shù)據(jù)庫都必須有相對應(yīng)的OLE DB驅(qū)動程序和ODBC驅(qū)動程序,ADO對象才能對數(shù)據(jù)庫進行存取。

ADO對象必須與各種驅(qū)動程序相結(jié)合才能存取各種類型數(shù)據(jù)庫,不同的數(shù)據(jù)庫需要不同的驅(qū)動程序。在Windows 9x/NT的"開始"→"設(shè)置"→"控制面板" →"ODBC Data Source(32Bit)"中的"驅(qū)動程序"標簽頁,可以查證機器上究竟裝了哪些驅(qū)動程序。

二、連接數(shù)據(jù)庫和打開數(shù)據(jù)表

不同數(shù)據(jù)庫的連接方法有所不同(即建立Connection實例的方法不一樣),但建立Connection實例后,利用Recordset對象進行存取數(shù)據(jù)的方法卻大同小異。下面對于不同的數(shù)據(jù)類型,編寫了相對應(yīng)的連接函數(shù),在程序中直接引用即可。

程序用VB Script腳本語言編寫。

1.建立MdbRecordset對象。MDB數(shù)據(jù)庫是一個完整的數(shù)據(jù)庫,內(nèi)部可能含有若干個數(shù)據(jù)表,在此函數(shù)中,Connection的作用是連接數(shù)據(jù)庫,Recordset的作用是打開數(shù)據(jù)表。

  1. Function CreateMdbRecordset(數(shù)據(jù)庫文件名, 數(shù)據(jù)表名或Select語句 )  
  2.   Dim conn,Provider,DBPath  
  3.   '建立Connection 對象  
  4.   Set conn = Server.CreateObject("ADODB.Connection")  
  5.   Provider="Provider=Microsoft.Jet.OLEDB.4.0;"  
  6.   DBPath = "Data Source=" & Server.MapPath("數(shù)據(jù)庫文件名")  
  7.   '打開數(shù)據(jù)庫  
  8.   conn.Open Provider & DBPath  
  9.   Set CreateMdbRecordset = Server.CreateObject("ADODB.Recordset")  
  10.   '打開數(shù)據(jù)表  
  11.   CreateMdbRecordset.Open "數(shù)據(jù)表名", conn, 2, 2  
  12. End Function   

 

2.建立帶密碼的MDB數(shù)據(jù)庫的Recordset對象。它的建立方式與建立不帶密碼的MDB數(shù)據(jù)庫的Recordset對象類似,只是多了一個密碼參數(shù),即在與數(shù)據(jù)庫連接時,必須給出密碼信息。

  1. Function CreateSecuredMdbRecordset( 數(shù)據(jù)庫文件名, 數(shù)據(jù)表名或Select語句,password )  
  2.  Dim conn,Provider,DBPath  
  3.  '建立Connection 對象  
  4.  Set conn = Server.CreateObject("ADODB.Connection")  
  5.  Provider = "Provider=Microsof.Jet.OLEDB.4.0;"  
  6.  DBPath = "Data Source="& Server.MapPath("數(shù)據(jù)庫文件名")  
  7.  '連接數(shù)據(jù)庫,注意要帶有密碼參數(shù)  
  8.  conn.Open Provider & DBPath&"Jet OLEDB:Database Password="&assword  
  9.  Set CreateSecuredMdbRecordset = Server.  
  10.  CreateObject("ADODB.Recordset")  
  11.  '打開數(shù)據(jù)表  
  12.  CreateSecuredMdbRecordset.Open "數(shù)據(jù)表名", conn, 2, 2  
  13. End Function   

 

3.DBF文件不是一個標準的數(shù)據(jù)庫文件,只相當于標準數(shù)據(jù)庫文件中的一個數(shù)據(jù)表,所以為了使用DBF文件,可以把所有的DBF文件放在一個目錄下,這樣把目錄名看成標準數(shù)據(jù)庫,每一個DBF文件相當于標準數(shù)據(jù)庫中的數(shù)據(jù)表。下面函數(shù)中的Directory是DBF所在的目錄名。

 

  1. Function CreateDbfRecordset( 目錄名, DBF文件名或Select語句 )  
  2.  Dim conn,Driver,SourceType,DBPath  
  3.  '建立Connection 對象  
  4.  Set conn = Server.CreateObject("ADODB.Connection")  
  5.  Driver="Driver={Microsoft Visual FoxProDriver};" SourceType = "SourceType=DBF;"  
  6.  DBPath="SourceDB=" & Server.MapPath("目錄名")  
  7.  '調(diào)用Open 方法打開數(shù)據(jù)庫  
  8.  conn.Open Driver & SourceType & DBPath  
  9.  Set CreateDbfRecordset = Server.CreateObject("ADODB.Recordset")  
  10.  '打開DBF文件  
  11.  CreateDbfRecordset.Open "DBF文件名或Select語句", conn, 2, 2  
  12. End Function   

 

4.由FoxPro生成的DBC數(shù)據(jù)庫與MDB數(shù)據(jù)庫相似,都是一個數(shù)據(jù)庫包含幾個數(shù)據(jù)表的形式,所以對DBC數(shù)據(jù)庫的存取方法與MDB數(shù)據(jù)庫相似。

  1. Function CreateDbcRecordset( DBC數(shù)據(jù)庫文件名, 數(shù)據(jù)表名或Select語句 )  
  2.  Dim conn,Driver,SourceType,DBPath  
  3.  '建立Connection 對象  
  4.  Set conn = Server.CreateObject("ADODB.Connection")  
  5.  Driver="Driver={Microsoft Visual FoxPro Driver};"  
  6.  SourceType = "SourceType=DBC;"  
  7.  DBPath = "SourceDB=" & Server.MapPath("DBC數(shù)據(jù)庫文件名")  
  8.  '連接數(shù)據(jù)庫  
  9.  conn.Open Driver & SourceType & DBPath  
  10.  Set CreateDbcRecordset = Server.CreateObject("ADODB.Recordset")  
  11.  '打開數(shù)據(jù)表  
  12.  CreateDbcRecordset.Open"數(shù)據(jù)表名或Select語句", conn, 2, 2  
  13. End Function  

 

5.將Excel生成的XLS文件(book)看成一個數(shù)據(jù)庫,其中的每一個工作表(sheet)看成一個數(shù)據(jù)庫表。

  1. Function CreateExcelRecordset(XLS文件名,Sheet名)  
  2.  Dim conn.Driver,DBPath  
  3.  '建立Connection對象  
  4.  Set conn = Server.CreateObject("ADODB.Connection")  
  5.  Driver="Driver={Microsoft Excel Driver (*.xls)};"  
  6.  DBPath = "DBQ=" & Server.MapPath("XLS文件名")  
  7.  '調(diào)用Open 方法打開數(shù)據(jù)庫  
  8.  conn.Open Driver & DBPath  
  9.  Set CreateExcelRecordset = Server.CreateObject("ADODB.Recordset")  
  10.  '打開Sheet  
  11.  CreateExcelRecordset.Open "Select * From ["&sheet&"$]", conn, 2, 2  
  12. End Function   

 

6.SQL Server屬于Server級的數(shù)據(jù)庫,使用時要求比較嚴格,必須要輸入用戶名及密碼才能使用。

 

  1. Function CreateSQLServerRecordset(計算機名稱,用戶ID, 用戶密碼,數(shù)據(jù)庫名稱 數(shù)據(jù)表或查看表或Select指令 )  
  2.  Dim Params, conn  
  3.  Set CreatSQLServerConnection = Nothing  
  4.  Set conn = Server.CreateObject ("ADODB.Connection")  
  5.  Params = "Provider=SQLOLEDB.1"  
  6.  Params = Params & ";Data Source=" & Computer  
  7.  Params = Params & ";User ID=" & UserID  
  8.  Params = Params & ";Password=" & Password  
  9.  Params = Params & ".Initial Catalog="&數(shù)據(jù)庫名稱  
  10.  Conn open Paras  
  11.  Set CreateSQLServerRecordset = Server. CreateObject("ADODB.Recordset")  
  12.  CreateSQLServerRecordset.Open source, conn, 2, 2  
  13. End Function  
  14. Dim conn,Driver,SourceType,DBPath  
  15.   ' 建立Connection 對象  
  16.   Set conn = Server.CreateObject("ADODB.Connection")  
  17.   Driver = "Driver={ Microsoft Visual FoxPro Driver};"  
  18.   SourceType = "SourceType=DBF;"  
  19.   DBPath = "SourceDB=" & Server.MapPath( "目錄名" )  
  20.   ' 調(diào)用Open 方法打開數(shù)據(jù)庫  
  21.   conn.Open Driver & SourceType & DBPath  
  22.   Set CreateDbfRecordset = Server.CreateObject("ADODB.Recordset")  
  23.   ' 打開DBF文件,參數(shù)二為Connection對象  
  24.   CreateDbfRecordset.Open DBF文件名或Select語句, conn, 2, 2   

 

asp連接數(shù)據(jù)庫字符串:

  1. Set conn = Server.CreateObject("ADODB.Connection")  
  2. connstr = "Driver={SQL Server};Server=localhost(數(shù)據(jù)庫所在的位置),1433;NETWORK=DBMSSOCN;UID=wap(連接數(shù)據(jù)庫的用戶名);PWD=wap(連接數(shù)據(jù)庫的密碼);DATABASE=wap(連接數(shù)據(jù)庫的庫名);"  
  3. conn.Open connstr   

 

  1. <%  
  2. dim conn,rs  
  3. set conn=server.createobject("adodb.connection")  
  4. DBpath=Server.Mappath("../data/bbs.mdb")  
  5. Conn.Open "driver={Microsoft Acess Driver(*.mdb)};dbq="&Dbpath  
  6. s="select * from friend"  
  7. Set rs=Server.CreatObject("ADODB.Recordset")  
  8. rs.open s,conn,3  
  9. %>  

 


原理:
在實際應(yīng)用開發(fā)中,特別是在WEB應(yīng)用系統(tǒng)中,如果JSP、Servlet或EJB使用JDBC直接訪問數(shù)據(jù)庫中的數(shù)據(jù),每一次數(shù)據(jù)訪問請求都必須經(jīng)歷建立數(shù)據(jù)庫連接、打開數(shù)據(jù)庫、存取數(shù)據(jù)和關(guān)閉數(shù)據(jù)庫連接等步驟,而連接并打開數(shù)據(jù)庫是一件既消耗資源又費時的工作,如果頻繁發(fā)生這種數(shù)據(jù)庫操作,系統(tǒng)的性能必然會急劇下降,甚至會導致系統(tǒng)崩潰。數(shù)據(jù)庫連接池技術(shù)是解決這個問題最常用的方法,在許多應(yīng)用程序服務(wù)器(例如:Weblogic,WebSphere,JBoss)中,基本都提供了這項技術(shù),無需自己編程,但是,深入了解這項技術(shù)是非常必要的。
數(shù)據(jù)庫連接池技術(shù)的思想非常簡單,將數(shù)據(jù)庫連接作為對象存儲在一個Vector對象中,一旦數(shù)據(jù)庫連接建立后,不同的數(shù)據(jù)庫訪問請求就可以共享這些連接,這樣,通過復用這些已經(jīng)建立的數(shù)據(jù)庫連接,可以克服上述缺點,極大地節(jié)省系統(tǒng)資源和時間。
數(shù)據(jù)庫連接池的主要操作如下:
(1)建立數(shù)據(jù)庫連接池對象
(2)按照事先指定的參數(shù)創(chuàng)建初始數(shù)量的數(shù)據(jù)庫庫連接
(3)對于一個數(shù)據(jù)庫訪問請求,直接從連接池中得到一個連接。如果數(shù)據(jù)庫連接池對象中沒有空閑的連接,且連接數(shù)沒有達到最大,創(chuàng)建一個新的數(shù)據(jù)庫連接。
(4)存取數(shù)據(jù)庫。
(5)關(guān)閉數(shù)據(jù)庫,釋放所有數(shù)據(jù)庫連接。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
用ASP上傳Excel 表格并導入到數(shù)據(jù)庫
十天學會ASP(要點)
ASP與數(shù)據(jù)庫應(yīng)用(給初學者
各種數(shù)據(jù)庫連接代碼
asp連接sqlserver數(shù)據(jù)庫實現(xiàn)代碼
中國.Net論壇--『 其他站點的文檔轉(zhuǎn)載和推薦 』 瀏覽:[轉(zhuǎn)載]用ADO對Excel的數(shù)據(jù)查詢--中國最大的.Net社區(qū)
更多類似文章 >>
生活服務(wù)
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服