国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

個(gè)人主頁的數(shù)據(jù)庫解決方案ASP

2019-11-18 22:26:04
字體:
供稿:網(wǎng)友
eNet學(xué)院


  如今,CGI日漸衰落,asp大行其道,大有取而代之之勢。對(duì)個(gè)人主頁制作者而言,CGI也確實(shí)太復(fù)雜了,尤其是在數(shù)據(jù)庫的操
作上,繁復(fù)無比讓人望而生畏。相較而言, ASP則簡單得多。其面向?qū)ο蟮乃枷耄瑢?fù)雜的底層操作掩蓋,只留下簡單的調(diào)用接
口。對(duì)數(shù)據(jù)庫的操作更是將它的優(yōu)點(diǎn)體現(xiàn)得淋漓盡致。

  本文將簡單介紹在個(gè)人主頁中運(yùn)用ASP連接數(shù)據(jù)庫,實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁。相信您在讀完本文后,您的主頁將更加精彩。

  1.在ASP中查詢access 數(shù)據(jù)庫

  ASP能讓我們用簡單的方法在網(wǎng)頁中查詢、更新數(shù)據(jù)庫。下面將給出的例子用的是MS ACCESS DATABASE,但是其操作的原理卻
可同樣地運(yùn)用在任何支持ODBC的數(shù)據(jù)庫上。(之所以選擇ACCESS,是因?yàn)樗菀撞僮?,且被廣泛使用,對(duì)大多數(shù)的中小型項(xiàng)目而
言,ACCESS無疑是最好的選擇。)

  先用ACCESS建立一個(gè)數(shù)據(jù)表如下:

  用戶編號(hào) 姓名 城市 電話號(hào)碼

   1 張三 武漢 027-84713858

   2 李四 北京 010-99581426

   3 王五 上海 021-85541253

  再請(qǐng)看下面的一段例子:

  

<%

SET DBCONNECTION=SERVER.CREATEOBJECT(“ADODB.CONNECTION”)

DBCONNECTION.OPEN “DSNNAME”

SQLQUERY=“SELECT * FROM CUSTOMERS”

SET RECUSTIONMERLIST=DBCONNECTION.EXECUTE(SQLQUERY)

%>

< CENTER>

< TABLE BORDER=1>

< % DO WHILE NOT RECUSTOMERLIST.EOF %>

< TR>

< TD><%=RECUSTOMERLIST(“客戶編號(hào)”)%>< /TD>

< TD><%=RECUSTOMERLIST(“姓名”)%>< /TD>

< TD><%=RECUSTOMERLIST(“城市”)%>< /TD>

< TD><%=RECUSTOMERLIST(“電話號(hào)碼”)%>< /TD>

< /TR>

< % RECUSTOMERLIST.MOVNEXT LOOP %>

< /TABLE>

< /CENTER> 

  可以看到,ASP的語法是VBSCRipT,其面向?qū)ο蟮乃枷胍才cVB相類似,所以,只要您初通VB或者VBSCRIPT,那ASP可以很容易
地上手。

  上面的一部分可以說是ASP中ADO的精髓所在,下面我們討論一下代碼的內(nèi)容<%和%>是ASP代碼的開始和結(jié)束標(biāo)志。服務(wù)器在
返回用戶請(qǐng)求時(shí),先將<%和%>中的內(nèi)容解釋成為標(biāo)準(zhǔn)的html代碼,再將它發(fā)送到客戶瀏覽器。存取數(shù)據(jù)庫時(shí),首先要建立連接,
也就是聲明一個(gè)CONNECTION類的實(shí)例(對(duì)象),然后運(yùn)用CONNECTION類的OPEN方法,將連接對(duì)象連接到一個(gè)ODBC數(shù)據(jù)源上,在上例
中就是DSNNAME,這是一個(gè)DSN。至于什么是DSN,后面將有介紹,在此先按下不表。到此,數(shù)據(jù)庫的連接就已經(jīng)完成了,下面要進(jìn)
行的是數(shù)據(jù)庫的操作。

  操作也是很簡單的,先定義一個(gè)SQL語句字串,然后調(diào)用CONNECTION的EXECUTE方法執(zhí)行,執(zhí)行的結(jié)果儲(chǔ)存在一個(gè)RECORDSET類
(可以看成是一個(gè)臨時(shí)存放數(shù)據(jù)的表)的對(duì)象中,在上例中是RECUSTOMERLIST。這樣,數(shù)據(jù)庫的查詢調(diào)用也就完成了,再只需將它輸
出即可。

  在DO WHILE ...LOOP的循環(huán)中輸出時(shí),調(diào)用ASP中RESPOND對(duì)象的WRITE方法,一般可以簡寫為“=”。而語句
RECUSTOMERLIST(字段名)返回的是當(dāng)前紀(jì)錄對(duì)應(yīng)字段的值。最后調(diào)用的是RECORDSET類的MOVENEXT方法,將紀(jì)錄指針移到下一個(gè)
紀(jì)錄,反復(fù)執(zhí)行,直到RECUSTOMERLIST的EOF(文件尾)為真。這樣,就將返回的查詢結(jié)果輸出了。

  上面所講的只是一點(diǎn)ASP數(shù)據(jù)存取的基本知識(shí),但我們已可略窺ASP強(qiáng)大的功能。

  2.現(xiàn)在我們可以通過ASP來存取數(shù)據(jù)庫,實(shí)現(xiàn)動(dòng)態(tài)效果。但還有一個(gè)問題:現(xiàn)在提供ASP支持的個(gè)人免費(fèi)網(wǎng)頁,大多數(shù)并不提供
數(shù)據(jù)庫的支持。也就是說,你無法在它的數(shù)據(jù)庫系統(tǒng)中建立并擁有自己的數(shù)據(jù)庫。若用本地?cái)?shù)據(jù)庫,你也無法配置服務(wù)器主機(jī)中的
ODBC,無法得到你本地?cái)?shù)據(jù)庫的DSN,也就不能通過ASP來存取數(shù)據(jù)庫了。怎么解決這個(gè)問題呢?下面的討論將給出一個(gè)簡單的方
法,那就是FILE DSN。

  首先解釋幾個(gè)名詞

  DSN:根據(jù)MICROSOFT的官方文檔,DSN的意思是“應(yīng)用程序用以請(qǐng)求一個(gè)連到ODBC數(shù)據(jù)源的連接(CONNECTION)的名字”,換句
話說,它是一個(gè)代表ODBC連接的符號(hào)。它隱藏了諸如數(shù)據(jù)庫文件名、所在目錄、數(shù)據(jù)庫驅(qū)動(dòng)程序、用戶ID、密碼等細(xì)節(jié)。因此,當(dāng)
建立一個(gè)連接時(shí),你不用去考慮數(shù)據(jù)庫文件名、它在哪兒等等,只要給出它在ODBC中的DSN即可。

  FILE DSN: 當(dāng)我們討論這個(gè)問題時(shí),先看看其他的DSN類型

  SYSTEM DSN:這種DSN可以被任何登錄到系統(tǒng)中的用戶使用。

  USER DSN:這是為特定用戶建立的DSN。只有建立這個(gè)DSN的用戶才能看到并使用它。在上面的兩種情況中,DSN的細(xì)節(jié)都儲(chǔ)存
在系統(tǒng)的注冊(cè)表中。

  知道了上面的預(yù)備知識(shí)后,讓我們來看看什么是FILE DSN。FILE DSN 將DSN的細(xì)節(jié)內(nèi)容存貯在一個(gè)文件中,而不是存貯在系
統(tǒng)注冊(cè)表中。這個(gè)文件是簡單的文本文件,用.dsn作為擴(kuò)展名。

  雖然這聽起來挺簡單,但你需要知道那些組成DSN文件的參數(shù)。下面給出一個(gè)簡單的用來存取ACCESS的DSN文件,

   ---- file.dsn ----

  [ODBC]

  DRIVER=Microsoft ACCESS Driver (*.mdb)

  ReadOnly=0

  UserCommitSync=Yes

  Threads=3

  SafeTransactions=0

  PageTimeout=5

  MaxScanRows=8

  MaxBufferSize=512

  ImplicitCommitSync=Yes

  FIL=MS ACCESS

  DriverId=25

  將它命名為file.dsn,當(dāng)然,你可根據(jù)你的愿意改名。

  建立了這個(gè)文件后,工作已完成了一半。下面的工作是建立一個(gè)連接。當(dāng)用一個(gè)SYSTEM DSN時(shí),建立連接只要簡單地引用
SYSTEM DSN:

  conn.open “mydsn”(conn是連接對(duì)象的名字)

  當(dāng)應(yīng)用如上的FILS DSN 時(shí),你需要加入更多的參數(shù)來說明。

  Conn.open “filedsn=c:/webdir/file.dsn;DBQ=c:/DATABASE/mydb.mdb;UID=admin;PWD=admin;”

  C:/webdir是.dsn文件所在的目錄,它需要用文件的物理路徑。你可以用SERVER.MAPPATH方法來得到。如Server.MapPath
(“/mysite/file.dsn”)。同樣,對(duì)于DBQ參數(shù)也需如此。UID和PWD參數(shù)是可選的。

  簡而概之,要建立一個(gè)可重用的FILE DSN

  1)用DSN參數(shù)建立一個(gè)以dsn為擴(kuò)展名的文本文件。

  2)用FILEDSN和DBQ參數(shù)建立連接,你可以用SERVER.MPAPATH來得到物理路徑。

  3)只需更改DBQ、UID和PWD參數(shù),就可將這個(gè)FILE DSN用到任何ACCESS數(shù)據(jù)庫上。

  需要注意的是,對(duì)其他非ACCESS類型的數(shù)據(jù)庫需要應(yīng)用不同的參數(shù)值和一些附加的參數(shù)。(武漢 Netwalker)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 瓦房店市| 阿城市| 阳原县| 荃湾区| 木里| 景泰县| 桓台县| 新源县| 望都县| 黑河市| 鄂温| 庆阳市| 宾阳县| 新建县| 轮台县| 石首市| 康平县| 武乡县| 中阳县| 兴国县| 阆中市| 南城县| 石家庄市| 萨迦县| 泾源县| 玛沁县| 积石山| 丰原市| 顺昌县| 怀安县| 浠水县| 内丘县| 北宁市| 黔江区| 任丘市| 新巴尔虎左旗| 永定县| 阳城县| 永德县| 册亨县| 汕头市|