cx_Oracle:ORA00922:alter session命令的选项缺失或无效

2024-04-23 20:17:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在尝试使用cx_Oracle从python程序中运行以下命令:

alter session set "_use_nosegment_indexes" = true;

我正在尝试为一个大学项目编写一个程序,该程序可以用于索引优化,并且需要能够从程序中运行explain计划(运行良好),该计划考虑到虚拟索引。据我所知,为了实现这一点,需要设置上面的内容,但是在python中我得到了以下错误:

cx_Oracle.DatabaseError: ORA-00922: missing or invalid option

所有这些都是通过与运行Oracle的远程服务器的连接来完成的。是我做错了什么,还是这是cx峎u Oracle不支持的东西,在这种情况下,我可以使用另一个包来执行此操作。如果没有,是否还有其他DBMS可以在python程序中运行虚拟索引的explain计划。在

谢谢


Tags: 项目命令程序trueusesession计划大学
2条回答

你也可以这样做(更清楚一点):

query = """alter session set "_use_nosegment_indexes" = true"""
dbcursor.execute(query)

最后找到了右引号和双引号的组合。最后,有效的代码是:

query = "alter session set \"_use_nosegment_indexes\" = true"
dbcursor.execute(query)

相关问题 更多 >