<%Dim adoCon
Dim rsLogbook
Dim strSQL
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("databasename.mdb")
Set rsLogbook = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT id, OtherFieldNamesGoHere FROM TableName;"
rsLogbook.Open strSQL, adoCon
%>
这是我用来将数据库链接到我的asp页面的代码。我想要做的是显示数据库的最后一条记录(目前有52条记录,但是当我添加更多记录时会改变)所以我认为最好的办法就是查找最后一条记录或最大记录“id”,它是每个记录的唯一字段,是访问数据库中的自动编号。但我找不到找到最大ID并显示它的方法。如果您有任何建议,任何其他更好的方法也可以。提前致谢
我尝试使用以下代码,但它给出了下面列出的错误
<%Dim adoCon
Dim rsLogbook
Dim strSQL
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("databasename.mdb")
Set rsLogbook = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT id, OtherFieldNamesGoHere FROM TableName;"
rsLogbook.CursorLocation=adUseServer
rsLogbook.Open strSQL, adoCon
rsLogbook.MoveLast
%>
ADODB.Recordset错误'800a0bb9'
参数类型错误,超出可接受的范围,或彼此冲突。
答案 0 :(得分:1)
如果它是Access(或SQL Server)数据库,您可以使用类似
的查询"SELECT top 1 id, OtherFieldNamesGoHere FROM TableName ORDER by id desc"
然后你可以在第一个例子中使用没有CursorLocation或MoveLast
的代码对于记录,OLEDB连接字符串通常优于ODBC,例如
"PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("databasename.mdb")