使用ASP連結某IP上的資料庫的connection string

顯示結果從第 1 筆 到 9 筆,共計 9 筆
  1. #1
    會員
    註冊日期
    2001-06-20
    討論區文章
    130

    使用ASP連結某IP上的資料庫的connection string

    小弟目前有兩台電腦
    電腦A架設IIS IP為192.168.2.113
    電腦B則是擺放資料庫的地方 IP為192.168.2.111
    現在有各疑問是架設在電腦A的ASP若要抓取電腦B ACCESS資料表的資料的話,Connection String 要怎麼寫呢?

    目前有試過一各方法是ODBC連網路磁碟機至電腦B,但是ODBC似乎只能連自己本身的資料庫...

    煩請各位解答...謝謝



  2. #2
    會員 ranger 的大頭照
    註冊日期
    2001-03-08
    討論區文章
    767
    不需要連遠端磁碟
    因為asp是server side script
    所以只要在安裝iis的電腦設好odbc連到同一台電腦的mdb即可
    或者用oledb,可以不設odbc

    Dim Provider, DBPath
    Provider = "Provider=Microsoft.Jet.OLEDB.4.0;"
    DBPath = "Data Source=" & Server.MapPath(FileName)
    Set GetMdbConnection = GetConnection( Provider & DBPath )

  3. #3
    會員
    註冊日期
    2001-06-20
    討論區文章
    130
    目前小弟為connection string為:

    Set DBConnection=Server.CreateObject("ADODB.Connection")

    ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("sa.mdb")

    DBConnection.Open ConnectionString

    Set RS=Server.CreateObject("ADODB.Recordset")

    RS.Open "SA",DBConnection

    以上的寫法是sa.mdb是放在IIS的預設目錄裡,但是現在mdb是放在網路上的另一台電腦ip為192.168.2.111,小弟的問題是如何把路徑指向那台電腦的MDB,煩請各位指導。謝謝 

  4. #4
    會員 ranger 的大頭照
    註冊日期
    2001-03-08
    討論區文章
    767
    為什麼要把iis跟mdb放在不同的電腦上呢?
    有什麼特殊考量嗎?
    實在看不出來有何必要!!!
    真有需要何不改用Server 級的資料庫

  5. #5
    會員
    註冊日期
    2001-06-20
    討論區文章
    130
    引用 作者:ranger
    為什麼要把iis跟mdb放在不同的電腦上呢?
    有什麼特殊考量嗎?
    實在看不出來有何必要!!!
    真有需要何不改用Server 級的資料庫
    1.因為預算不足
    2.放資料庫的電腦的廠商不願意架SERVER因為牽涉到一些索賠的問題,怕架server電腦容易被攻擊

    所以現在就卡在這些問題上打轉,沒有其他辦法能做嗎?



  6. #6
    會員 ranger 的大頭照
    註冊日期
    2001-03-08
    討論區文章
    767
    如果一定要連絡路磁碟當然也可以
    在設odbc時指向已連線的網路磁碟及路徑
    connection string只要設為 "dsn=xxxx"即可
    等號右的xxxx為設好的odbc名稱
    例如
    set Recordset1 = Server.CreateObject("ADODB.Recordset")
    Recordset1.ActiveConnection = "dsn=xxxx;"
    只是用網路磁碟的方式更要注意安全考量

    而且個人覺得mdb實在無需放在另一台電腦上
    沒必要

  7. #7
    會員
    註冊日期
    2001-06-20
    討論區文章
    130
    這週末嘗試著把您的語法加入到程式碼裡...但對DSN的寫法不熟,遇到些許問題...目前小弟在連結資料庫的程式碼部分為下,要如何把DSN的部分寫進去呢? 麻煩您指點迷津,謝謝:

    <%
    '宣告Connection(資料庫連結)物件
    Set DBConnection=Server.CreateObject("ADODB.Connection")

    '開啟資料庫通道
    DBConnection.Open "sa"

    'RECORDSET物件
    Set RS=Server.CreateObject("ADODB.Recordset")

    '開啟資料表
    RS.Open "SA",DBConnection
    %>

  8. #8
    會員 ranger 的大頭照
    註冊日期
    2001-03-08
    討論區文章
    767
    引用 作者:lalahaha
    這週末嘗試著把您的語法加入到程式碼裡...但對DSN的寫法不熟,遇到些許問題...目前小弟在連結資料庫的程式碼部分為下,要如何把DSN的部分寫進去呢? 麻煩您指點迷津,謝謝:

    <%
    '宣告Connection(資料庫連結)物件
    Set DBConnection=Server.CreateObject("ADODB.Connection")

    '開啟資料庫通道
    DBConnection.Open "sa"

    'RECORDSET物件
    Set RS=Server.CreateObject("ADODB.Recordset")

    '開啟資料表
    RS.Open "SA",DBConnection
    %>
    少了
    rs.ActiveConnection = "dsn=xxxx;"

  9. #9
    會員
    註冊日期
    2001-06-20
    討論區文章
    130
    以下是小弟修改後的程式碼,ODBC現在設在K網路磁碟機)上且名稱為SA,使用DSN連結之後,還是沒辦法顯示資料。如果同樣設定把ODBC設在本機的C:上的話,資料顯示就沒問題。不知道是否程式哪各部份忘了加導致ODBC無法設在網路磁碟機上。那我的程式碼要如何改呢? 煩請各位大大指教...謝謝


    <HTML>
    <HEAD>
    <TITLE>哲學之道中興保全</TITLE>
    </HEAD>
    <body bgcolor="#FFFFFF">
    <Center><font size = "16">哲學之道中興保全 </font>


    <%
    Dim strDBDSN, strSQL, objDBConn, objRS, intFCount,intl
    '資料庫的資料來源
    strDBDSN = "DSN=sa;uid=jimmy;pwd=1234"
    '資料庫查詢的語法
    strSQL = "select * from messagebarhistory order by 發生日期 desc"
    '建立資料庫連結物件
    Set objDBConn = Server.CreateObject("ADODB.Connection")
    objDBConn.Open strDBDSN
    '執行SQL的資料庫查詢
    Set objRS = objDBconn.Execute(strSQL)
    '取得欄位數目
    intFCount = objRS.Fields.Count-1
    '檢查是否有紀錄
    If Not objRS.Eof Then
    Response.Write "<table border=1><tr>"
    '顯示資料庫的欄位名稱
    For intl = 0 to intFCount
    Response.Write "<td><b>" & objRS(intl).Name & "</b></td>"
    Next
    Response.Write "</tr>"
    '顯示資料庫內容
    Do While Not objRS.Eof
    Response.Write "</tr>"
    '顯示每筆紀錄的欄位
    For intl = 0 to intFCount
    If objRS.Fields(intl).Value <> "" Then
    Response.Write "<td valign = ""top"">" &_
    objRS.Fields(intl).Value & "</td>"
    Else
    Response.Write "<td valign=""top"">-</td>"
    End If
    Next
    Response.Write "</tr>"
    objRS.MoveNext
    Loop
    Response.Write "</table>"
    End If
    objRS.Close
    Set objRS = Nothing
    objDBConn.Close
    Set objDBConn = Nothing
    %>
    </center>
    </body>
    </html>

類似的主題

  1. 【求助】Appserv在winxp上的資料庫問題
    作者:李登輝 所在討論版:☉ -- 架 站 DIY 討 論 版
    回覆: 0
    最後發表: 2003-11-16, 05:42 AM
  2. 【求助】請問(ASP)資料庫的資料顯示在TEXT BOX裡的問題
    作者:yojean 所在討論版:☉ -- 架 站 DIY 討 論 版
    回覆: 11
    最後發表: 2003-08-26, 07:14 PM
  3. [請教]各位前輩有關PDA上使用資料庫的部份!!
    作者:luisbios 所在討論版:-- NB 筆記型電腦 & PDA 討 論 版
    回覆: 1
    最後發表: 2003-03-17, 06:31 PM

 

此網頁沒有從搜尋引擎而來的訪客

發表文章規則

  • 不可以發表新主題
  • 不可以回覆文章
  • 不可以上傳附加檔案
  • 不可以編輯自己的文章
  •