主题:  绝对经典的数据库连接问题

風雲

职务:普通成员
等级:2
金币:1.0
发贴:281
#12001/6/26 14:10:31
数据库连接问题,我请教了好几个大虾,发了无数帖子,终于在无疑之间找到了答案:(绝对经典,这个问题曾困扰了我一个星期),现在发表出来,以喂读者:


在 UltraDev 4 中使用 Server.Mappath在 UltraDev 4 中,自訂連線字串的方式允許你使用 Server.Mappath,不過先決條件是:

定義連線的對話框中必須指定為「應用程式伺服器」,「這台機器」是不支援這種方式的。 (即,在新建连接中,选择Custum Connection String选项,并在蹦出来的选项卡中选择Using Drive On Application Server项)

必須在連線字串中指出根目錄的路徑。
請確定連線字串的第一個部份前後有使用雙引號括住。
典型的 Access 資料庫 DSNLess 連線字串,使用 Server.Mappath 在 VBScript 寫起來是這樣的。請注意在自訂連線字串的對話框中,只能為同一行文字。

"Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.Mappath("\somepath\dbname.mdb") & ";Uid=Admin;Pwd=pass;"

而典型的 Access 資料庫 OLEDB 連線字串則是:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("\somepath\dbname.mdb") & ";User Id=admin;Password=pass;"

如果你使用 ASP javascript,則必須將 & 符號改為 + 號,像是這樣:

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.Mappath("\somepath\dbname.mdb") + ";User Id=admin;Password=pass;"

如果你使用 UltraDev 1,千萬不要在自訂連線字串中使用 Server.MapPath 這種方式,不然的話會讓 UltraDev 無法使用 。也就是說,你可以加入這樣的原始碼,但是資料繫結面板內不會顯示出任何資料。
^_^ ^_^



hansen

职务:普通成员
等级:1
金币:1.0
发贴:181
#22001/6/26 14:35:58
嘿嘿,恭喜你,多年的媳妇熬成婆了!



weicong

职务:普通成员
等级:1
金币:1.0
发贴:136
#32001/6/26 15:54:17
没有发“无数”贴子这么夸张吧。



blshfw

职务:普通成员
等级:1
金币:1.0
发贴:241
#42001/6/28 19:51:54
我觉得也是,好象帮助里就有答案。