我在 Javascript 标记的 html 页面中有以下代码:
var adOpenDynamic = 2
var adLockOptimistic = 3
var conn_str = 'Provider=Microsoft.Jet.OLEDB.4.0; Data Source=G:/path_to_myDB.mdb'
var conn = new ActiveXObject("ADODB.Connection")
conn.open(conn_str)
这是从 html 的 onload 事件调用的函数的开头:
var PassNbrAppel = new Array();
var i=1
var rsPass = new ActiveXObject("ADODB.Recordset")
SQLpass = 'SELECT Avis.[Numéro Passerelle], Count(Avis.[Numéro Passerelle]) AS [CompteDeNuméro Passerelle] FROM Avis WHERE (((Avis.[Date Appel])>#10/19/2011# And (Avis.[Date Appel])<#11/07/2011#) AND (Avis.[Numéro Passerelle] IS NOT NULL)) GROUP BY Avis.[Numéro Passerelle] ORDER BY Val(Avis.[Numéro Passerelle]);'
rsPass.open(SQLpass, conn, adOpenDynamic, adLockOptimistic)
rs2arr(rsPass,arrPass)
rs.close()
我收到以下错误消息(翻译自法语):“没有为一个或多个所需参数给出值”并且行号指向 rsPass.open(SQLpass, conn, adOpenDynamic, adLockOptimistic)
我不断地重新检查代码中是否有错误,但我似乎找不到任何错误......
我从 here 获取了一些代码
最佳答案
问题出在我的 SQL 语句中的特殊字符。我没有尝试使其与“é”一起使用,而是更改了字段名称,这样它们就没有特殊字符。法国人的骄傲就这么多了......
关于Javascript ADO 记录集打开方法不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8054505/