ORA-02844: Invalid value for the leave open flag
Cause: A value was given for the flag that determines whether a file is to be left open after the client checks it to see if the servers can use it. Only TRUE and FALSE are supported.
Action: This is a programming error – check the calling routine.
ORA-02844的含义是在使用建表或修改表(alter table)时,leave open flag的设置不正确。
该问题可能是由于下列原因之一引起的:
1. 用leave open标记创建表:在Oracle8i/9i之前的版本中,leave open标记只用于在rolling migration期间使索引保持不变,这不再是可用选项了。
2 .用leave open标记修改表:在Oracle8i/9i之前的版本中,leave open标记表示修改表时索引不需要重建,但新列不会添加到索引中。
当在ORACLE中创建或尝试修改表时,将会抛出ORA-02844的错误。 具体的,当你的SQL语句中包含leave open参数时,将会出现此问题。
1. 将SQL语句中的leave open参数去掉。
2. 尝试再次执行SQL语句,查看是否任然存在问题,如果仍有问题,检查SQL语句或变量值是否正确。
3. 如果仍然无法解决问题,应检查可能存在的系统权限问题,以确保可以更改表。