首页 > 解决方案 > Excel VBA 宏通过 OracleInProcServer 连接更新 SQL 语句

问题描述

我正在尝试使用 OraSession = CreateObject("OracleInProcServer.XOraSession") 然后使用 OraDatabase 对象从 vba marco 更新 Oracle 表。我能够插入和选择数据,但我还没有找到有效的更新语句。

    Set OraSession = CreateObject("OracleInProcServer.XOraSession")
    Set OraDatabase = OraSession.DbOpenDatabase("xxxx", "xxx/xxx", 0&)
    Set ws1 = Sheets("Sample Request Form")
    eln_ref = ws1.Cells(7, 3).value
    expd = ws1.Cells(2, 3).value
    exp_date = Format(expd, "dd-mmm-yy")
    str = " Update Table SET EXP_DATE = '" & exp_date & "' WHERE EXP_ID = '" & eln_ref & "'"
    OraDatabase.Executesql (str)

我已经获取了字符串并在 sql developer 中运行它并运行更新。但它确实会更新,但在通过 excel 执行时也不会出错。我也尝试过使用 CreateSQL 方法,但是 .Executesql 方法不接受它的输出。

Oracle 数据库对象信息: https ://docs.oracle.com/cd/E11882_01/win.112/e17727/serobjch010.htm#OOFOL380

有任何想法吗?

标签: excelvbaoracle

解决方案


推荐阅读