以下示例ASP经典代码我已修改,因此可以通过cscript
或wscript
运行,与Oracle 8i通信并使用在Windows 2000上运行的Oracle ODBC驱动程序8.01.07.00,返回有效shipper_id
。此主键字段通过before insert or update
触发器填充(如果需要,我可以包含它,但我已确认它有效)。
但是,对于Oracle 11,Oracle ODBC驱动程序11.02.00.03和Windows Server 2012,只返回空白值 - 为什么?
可以提供任何可以提供的帮助。请注意,除非没有其他选项,否则我宁愿不必切换到OO4O或使用Oracle Provider for OLE DB。
Dim strCnxn, cnxn, rs
strCnxn = "DSN=OUR_DSN;uid=OUR_UID;pwd=OUR_PWD"
Set cnxn = Wscript.CreateObject("ADODB.Connection")
cnxn.Open strCnxn
Set rs = Wscript.CreateObject("ADODB.Recordset")
rs.Open "SHIPPER", cnxn, 1, 3, &H0002 'adOpenKeyset, adLockOptimistic, adCmdTable
rs.AddNew
rs("CARRIER_ID") = "13263"
rs("NAME") = "test-shipper"
rs.Update
Wscript.Echo("Shipper ID: " & rs("SHIPPER_ID"))
Wscript.Echo("Carrier ID: " & rs("CARRIER_ID"))
Wscript.Echo("Name: " & rs("NAME"))
rs.Close
Set rs = Nothing
Set cnxn = Nothing