0

我有一个旧的 ASP 站点(很久以前由一位前雇员编写),它使用 DSN 连接到 2003 ODBC 数据库。服务器已由我们的主机更新到 2008,我们不能再使用 ODBC,所以我必须建立连接 DSN-Less。

不幸的是,我对 ASP 和通过 ASP 的数据库连接知之甚少。我想知道是否有人可以帮助我更改代码以在没有 ODBC 的情况下连接到 Access 数据库?

我认为它使用以下代码连接:

<%
' Get current name of region and intro text
Dim objRec, sql, introtext
sql="SELECT * FROM hometext WHERE home_id = 1"
set objRec=Server.CreateObject("ADODB.Recordset")
objRec.Open sql, "dsn=databasename"
introtext = Replace(objRec("home_introtext"), vbCrLf, "<br />")

' Get the 5 newest news items
Dim objRec2, sql2, newstext
sql2="SELECT TOP 5 news_date, news_text FROM news ORDER BY news_date DESC"
set objRec2=Server.CreateObject("ADODB.Recordset")
objRec2.Open sql2, "dsn=databasename"

' Get all images to appear to page
Dim objRec3, sql3
sql3="SELECT * FROM homeimages ORDER BY homeimage_date DESC"
set objRec3=Server.CreateObject("ADODB.Recordset")
objRec3.Open sql3, "dsn=databasename"

' Get the next 5 events from the current date
Dim objRec4, sql4
sql4="SELECT TOP 5 event_date, event_name FROM events WHERE event_date >= " &         niceDateAccess(Date()) & " ORDER BY event_date"
set objRec4=Server.CreateObject("ADODB.Recordset")
objRec4.Open sql4, "dsn=databasename"
%>

我不确定这一切是如何联系起来的,我不是一个脚本编写者。

任何(愚蠢的)帮助将不胜感激!

谢谢

编辑:数据库位于服务器根文件夹中的“私人”文件夹中。

4

1 回答 1

1

这是一个示例代码。更改您的数据库名称和表字段名称

set conob = Server.CreateObject("ADODB.Connection")
conob.Provider="Microsoft.Jet.OLEDB.4.0"
conob.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.MapPath("YourDatabaseName.mdb")
Set rsuni = Server.CreateObject("ADODB.Recordset")
sqlStr="select * from Student_Entry"

rsuni.open sqlStr,conob

您必须授予您登录的用户对数据库的完全访问权限。

于 2012-10-03T08:19:16.513 回答