• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 如何使用ASP訪問XML文件

    發表于:2007-09-07來源:作者:點擊數: 標簽:
    XML標準正在為越來越多的軟件廠商所接受,Microsoft作為力推XML的廠商之一,為XML的推廣做出了大量的貢獻。它的文檔對象模型(DOM)為XML的存取提供了很多方便使用的方法。 XML和 數據庫 有很多相似之處,它們都是結構化的存儲信息的途徑。數據庫用記錄和字段組
    XML標準正在為越來越多的軟件廠商所接受,Microsoft作為力推XML的廠商之一,為XML的推廣做出了大量的貢獻。它的文檔對象模型(DOM)為XML的存取提供了很多方便使用的方法。

    XML和數據庫有很多相似之處,它們都是結構化的存儲信息的途徑。數據庫用記錄和字段組成的表格存儲信息,這樣就允許方便地訪問和搜索。XML文件也可以按照類似的結構化方式來存儲信息。而XML作為一個統一的標準,不會像數據庫系統那樣因為數據庫的不同而造成數據傳遞的困難。XML可以從一種數據庫中取出數據,并將數據上傳到完全不同的數據庫中,例如可以將數據從服務器A上的Oracle數據庫傳送給服務器B的SQL數據庫。本文討論如何使用動態服務頁面(Active Server Pages, ASP)將XML文件中的數據寫入數據庫。

    本文的實例在Windows 2000、SQL Server 7.0、IE5.0平臺上測試通過。

    數據說明

    本例使用的數據庫ST中的students表結構為:

    字段名 字段類型 字段寬度

    Name Char 10

    Birthday Datetime 8

    Score Int 4

    XML文件students.xml如下:



    Tom

    1976-2-15

    92



    alice

    1978-4-18

    99



    技術說明

    使用ASP訪問XML文件有兩種方式:

    ● 作為文本流的簡單結構文件;

    ● 作為XML DOM對象。

    本文使用的是第二種方式,DOM中常用的方法和屬性有:

    1. CreateObject()方法與load()方法

    為給出的文件創建DOM,首先要使用CreateObject()方法創建DOM的實例。下面是如何使用ASP在服務器上創建DOM的例子:

    set oXMLDOM=server.CreateObject (“Microsoft.XMLDOM”)

    XML DOM被創建后,它必須裝入一個XML文件。例如:

    oXMLDOM.load(“d:\students.xml”)

    創建了DOM對象并載入了XML文件后,就可以使用DOM的方法和屬性來訪問文件了。

    2. getElementsByTagName()方法

    Document對象的getElementsByTagName方法可以取得所有具有所傳參數指定的名字的后續元素的列表,它返回一個NodeList對象。

    例如: set recordlist=oXMLDOM.getElements-

    ByTagName(“student”)

    3. item()方法

    nodeList對象的item()方法將一個索引作為參數,返回這個索引位置上的節點。如果這個索引超出了范圍,那么就返回空值。注意:計數器總是從零開始。

    4.Length屬性

    nodeList對象的Length屬性返回一個無符號的長整數,為NodeList中節點的個數。

    5.Childnodes屬性

    Childnodes是node對象的一個屬性,它返回這個節點的所有子節點的NodeList。

    例如: recordlist.item(i).childnodes.item(j)

    .text指的是第i+1個student的第j+1個子節點的值(因為計數器總是從零開始)。假設i=1,j=0,則recordlist.item(i).childnodes.item(j).text的值為“alice”,即為第2個student的第1個子節點(name)的值。

    程序說明

    下面的程序訪問XML文件students.xml,并將其數據寫入數據庫ST的students表中。為了使程序盡量簡潔,假設空表students已存在于數據庫ST中。程序的實現步驟如下:

    1.連接數據庫ST,打開表students,創建Recordset對象

    Set conn=server.CreateObject(“ADODB

    .connection”)

    conn.Open “dsn=st;uid=sa;pwd=;database=st”

    Set myrecord=server.createobject(“ADODB

    .Recordset”)

    myrecord.open “students”,conn,1,3

    2. 創建DOM的實例oXMLDOM

    set oXMLDOM=server.CreateObject (“Microsoft.XMLDOM”)

    3. 載入XML文件students.xml

    oXMLDOM.load(“d:\students.xml”)

    4. 使用DOM的getElementsByTagName()方法創建所有student元素的節點清單

    set recordlist=oXMLDOM.getElementsByTag-

    Name(“student”)

    5.使用一個雙重循環將XML文件中的數據讀出,寫入數據庫表中

    ’用外循環遍歷各student

    for i=0 to recordlist.length-1

    ’用內循環取得每個student的各節點的值,存入數組sp

    for j=0 to recordlist.item(i).childnodes

    .length-1

    sp(j)= recordlist.item(i).childnodes

    .item(j).text

    next

    ’在表students中增加一條記錄,并將數組sp的值寫入各字段(注意數據類型的轉變)

    myrecord.AddNew

    myrecord(“name”).value=sp(1)

    myrecord(“birthday”).value=cdate(sp(3))

    myrecord(“score”).value=cint(sp(4))

    myrecord.Update

    next

    6.關閉所創建的實例與對象

    set oxmldom=nothing

    set recordlist=nothing

    myrecord.Close

    Set myrecord=nothing

    小 結

    通過本文,我們可以看到XML和數據庫具有很緊密的聯系,ASP在連接XML和數據庫之間起到重要的作用,可以使用XML作為不同數據存儲之間的中介,也可以使用XML本身作為一種數據存儲方式。


    XML標準正在為越來越多的軟件廠商所接受,Microsoft作為力推XML的廠商之一,為XML的推廣做出了大量的貢獻。它的文檔對象模型(DOM)為XML的存取提供了很多方便使用的方法。
    XML和數據庫有很多相似之處,它們都是結構化的存儲信息的途徑。數據庫用記錄和字段組成的表格存儲信息,這樣就允許方便地訪問和搜索。XML文件也可以按照類似的結構化方式來存儲信息。而XML作為一個統一的標準,不會像數據庫系統那樣因為數據庫的不同而造成數據傳遞的困難。XML可以從一種數據庫中取出數據,并將數據上傳到完全不同的數據庫中,例如可以將數據從服務器A上的Oracle數據庫傳送給服務器B的SQL數據庫。本文討論如何使用動態服務頁面(Active Server Pages, ASP)將XML文件中的數據寫入數據庫。

    本文的實例在Windows 2000、SQL Server 7.0、IE5.0平臺上測試通過。

    數據說明

    本例使用的數據庫ST中的students表結構為:

    字段名 字段類型 字段寬度

    Name Char 10

    Birthday Datetime 8

    Score Int 4

    XML文件students.xml如下:



    Tom

    1976-2-15

    92



    alice

    1978-4-18

    99



    技術說明

    使用ASP訪問XML文件有兩種方式:

    ● 作為文本流的簡單結構文件;

    ● 作為XML DOM對象。

    本文使用的是第二種方式,DOM中常用的方法和屬性有:

    1. CreateObject()方法與load()方法

    為給出的文件創建DOM,首先要使用CreateObject()方法創建DOM的實例。下面是如何使用ASP在服務器上創建DOM的例子:

    set oXMLDOM=server.CreateObject (“Microsoft.XMLDOM”)

    XML DOM被創建后,它必須裝入一個XML文件。例如:

    oXMLDOM.load(“d:\students.xml”)

    創建了DOM對象并載入了XML文件后,就可以使用DOM的方法和屬性來訪問文件了。

    2. getElementsByTagName()方法

    Document對象的getElementsByTagName方法可以取得所有具有所傳參數指定的名字的后續元素的列表,它返回一個NodeList對象。

    例如: set recordlist=oXMLDOM.getElements-

    ByTagName(“student”)

    3. item()方法

    nodeList對象的item()方法將一個索引作為參數,返回這個索引位置上的節點。如果這個索引超出了范圍,那么就返回空值。注意:計數器總是從零開始。

    4.Length屬性

    nodeList對象的Length屬性返回一個無符號的長整數,為NodeList中節點的個數。

    5.Childnodes屬性

    Childnodes是node對象的一個屬性,它返回這個節點的所有子節點的NodeList。

    例如: recordlist.item(i).childnodes.item(j)

    .text指的是第i+1個student的第j+1個子節點的值(因為計數器總是從零開始)。假設i=1,j=0,則recordlist.item(i).childnodes.item(j).text的值為“alice”,即為第2個student的第1個子節點(name)的值。

    程序說明

    下面的程序訪問XML文件students.xml,并將其數據寫入數據庫ST的students表中。為了使程序盡量簡潔,假設空表students已存在于數據庫ST中。程序的實現步驟如下:

    1.連接數據庫ST,打開表students,創建Recordset對象

    Set conn=server.CreateObject(“ADODB

    .connection”)

    conn.Open “dsn=st;uid=sa;pwd=;database=st”

    Set myrecord=server.createobject(“ADODB

    .Recordset”)

    myrecord.open “students”,conn,1,3

    2. 創建DOM的實例oXMLDOM

    set oXMLDOM=server.CreateObject (“Microsoft.XMLDOM”)

    3. 載入XML文件students.xml

    oXMLDOM.load(“d:\students.xml”)

    4. 使用DOM的getElementsByTagName()方法創建所有student元素的節點清單

    set recordlist=oXMLDOM.getElementsByTag-

    Name(“student”)

    5.使用一個雙重循環將XML文件中的數據讀出,寫入數據庫表中

    ’用外循環遍歷各student

    for i=0 to recordlist.length-1

    ’用內循環取得每個student的各節點的值,存入數組sp

    for j=0 to recordlist.item(i).childnodes

    .length-1

    sp(j)= recordlist.item(i).childnodes

    .item(j).text

    next

    ’在表students中增加一條記錄,并將數組sp的值寫入各字段(注意數據類型的轉變)

    myrecord.AddNew

    myrecord(“name”).value=sp(1)

    myrecord(“birthday”).value=cdate(sp(3))

    myrecord(“score”).value=cint(sp(4))

    myrecord.Update

    next

    6.關閉所創建的實例與對象

    set oxmldom=nothing

    set recordlist=nothing

    myrecord.Close

    Set myrecord=nothing

    小 結

    通過本文,我們可以看到XML和數據庫具有很緊密的聯系,ASP在連接XML和數據庫之間起到重要的作用,可以使用XML作為不同數據存儲之間的中介,也可以使用XML本身作為一種數據存儲方式。



    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>