[Microsoft][Oracle 的 ODBC 驱动程序][Oracle]VBScript 中的 ORA-00911
[Microsoft][ODBC driver for Oracle][Oracle]ORA-00911 in VBScript
当我直接使用查询时它是有效的,但是当我在其中使用 VBscript 运行 时会出现此错误。
与 de DB 的连接正常。
global_OracleConn = Createobject("ADODB.Connection")
global_OracleConn.Open connectionString
query = "UPDATE DB.TabelX SET X_DT_ = SYSDATE + 360, "_
&"X_Amount_MAX_ID = 100, X_Amount_IN_REQUEST = '1', X_NUM = 15000,"_
&"X_VALUE_LIMIT = 15000, SCORE = 0,
&"WHERE ROW_ID IN (SELECT X_ULTIMA_ID FROM DB.TabelY "_
&"WHERE OU_NUM IN ('"&varID&"'));"
global_OracleConn.Execute(Query)
我试过使用其他分界线或全部放在一行中,但仍然出现错误。
有几个问题:
- 删除 SQL 字符串末尾的分号
- 引用错误。您在
SCORE = 0,
之后漏掉了一个双引号
- 适用于 Oracle 的古老 Microsoft ODBC 驱动程序已经 deprecated 多年了。使用来自 Oracle
的 ODBC 驱动程序
- 使用带有绑定参数的预处理语句,即
当我直接使用查询时它是有效的,但是当我在其中使用 VBscript 运行 时会出现此错误。
与 de DB 的连接正常。
global_OracleConn = Createobject("ADODB.Connection")
global_OracleConn.Open connectionString
query = "UPDATE DB.TabelX SET X_DT_ = SYSDATE + 360, "_
&"X_Amount_MAX_ID = 100, X_Amount_IN_REQUEST = '1', X_NUM = 15000,"_
&"X_VALUE_LIMIT = 15000, SCORE = 0,
&"WHERE ROW_ID IN (SELECT X_ULTIMA_ID FROM DB.TabelY "_
&"WHERE OU_NUM IN ('"&varID&"'));"
global_OracleConn.Execute(Query)
我试过使用其他分界线或全部放在一行中,但仍然出现错误。
有几个问题:
- 删除 SQL 字符串末尾的分号
- 引用错误。您在
SCORE = 0,
之后漏掉了一个双引号
- 适用于 Oracle 的古老 Microsoft ODBC 驱动程序已经 deprecated 多年了。使用来自 Oracle 的 ODBC 驱动程序
- 使用带有绑定参数的预处理语句,即