经典 ASP、Visual Basic 和 ADODB 记录集

Classic ASP, Visual Basic, and ADODB Recordsets

我最近继承了一个用 Visual Basic 和 Java 脚本编写的经典 ASP 应用程序。我不是程序员,但在 VBA 中使用 Excel 和 Access 编写了一些应用程序。

我希望添加脚本以使用 ADODB 记录集将 excel (.xlsx) 工作表复制到访问 (.accdb) table。我在 VBA 中使用了这种方法,但是 asp classic 中的 Visual Basic 代码无法识别记录集对象的 Locktype 或 Options 属性。如果我删除 .Options 和 .Locktype 脚本将 运行 但仅在只读模式下,我无法添加新记录。

adPath = Server.Mappath("OutageData/QHT.accdb")
   Set cnnAccess = Server.CreateObject("ADODB.Connection")
with cnnAccess
    .Provider="Microsoft.ACE.OLEDB.12.0"
    .Open adpath
end with
Set rstAccess = Server.CreateObject("ADODB.Recordset")
with rstAccess
      
    .ActiveConnection=cnnAccess
    .CursorType=adOpenDynamic
    .Options=adCmdTable 
    .LockType=adLockOptimistic
    .cursorlocation=aduseclient
    .Open "TST1UPDT"


  end with

有什么建议吗?

感谢

基思

ssqlinsertupdt ="INSERT INTO " & "TST1UPDT" & " SELECT * FROM " & "[Excel 8.0; HDR=YES; DATABASE=" & cnnAccess & "]." & "[TASK$]"
DatabaseConnection.Execute ssqlinsertUpdt

上面的 sql 语句有效。