會員 ![]() | 使用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似乎只能連自己本身的資料庫... 煩請各位解答...謝謝 |
回覆 |
會員 ![]() | 不需要連遠端磁碟 因為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 ) |
回覆 |
會員 ![]() | 目前小弟為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,煩請各位指導。謝謝 |
回覆 |
會員 ![]() | 為什麼要把iis跟mdb放在不同的電腦上呢? 有什麼特殊考量嗎? 實在看不出來有何必要!!! 真有需要何不改用Server 級的資料庫 |
回覆 |
會員 ![]() | 引用:
2.放資料庫的電腦的廠商不願意架SERVER因為牽涉到一些索賠的問題,怕架server電腦容易被攻擊 所以現在就卡在這些問題上打轉,沒有其他辦法能做嗎? | |
回覆 |
會員 ![]() | 如果一定要連絡路磁碟當然也可以 在設odbc時指向已連線的網路磁碟及路徑 connection string只要設為 "dsn=xxxx"即可 等號右的xxxx為設好的odbc名稱 例如 set Recordset1 = Server.CreateObject("ADODB.Recordset") Recordset1.ActiveConnection = "dsn=xxxx;" 只是用網路磁碟的方式更要注意安全考量 而且個人覺得mdb實在無需放在另一台電腦上 沒必要 |
回覆 |
會員 ![]() | 這週末嘗試著把您的語法加入到程式碼裡...但對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;" | |
回覆 |
會員 ![]() | 以下是小弟修改後的程式碼,ODBC現在設在K ![]() <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> |
回覆 |
|
XML | RSS 2.0 | RSS |
本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。