oracle - 重新创建 Oracle DUAL 表

标签 oracle dual-table

有没有办法在 Oracle 中创建/重新创建双表?它不小心掉了下来。

最佳答案

您可能应该联系 Oracle 支持。

你有备份吗?如果是这样,请从备份中恢复该表。否则(如果您不适合联系 Oracle)...

Oracle对DUAL有特殊的优化,但不知道表本身有没有什么特别之处。我会把它当作一张普通的 table 来对待,看看会发生什么。尝试这个:

以 SYSDBA 身份连接,然后执行以下命令:

CREATE TABLE SYS.DUAL
(
  DUMMY  VARCHAR2(1 BYTE)
);

INSERT INTO SYS.DUAL VALUES ( 'X' );

COMMIT;

GRANT SELECT ON SYS.DUAL TO public WITH GRANT OPTION;

CREATE PUBLIC SYNONYM DUAL FOR SYS.DUAL;

永远不要再更改 SYS 模式中的任何内容!

编辑:刚刚注意到今天的重复:https://stackoverflow.com/questions/2816478/recovering-dual-table-in-oracle - 在此处添加了建议。

关于oracle - 重新创建 Oracle DUAL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2817775/

相关文章:

python - 在centos上安装Python devel

sql - MS Sql Server 中的 Oracle "Dual"表相当于什么?

SQL (Oracle) Select 没有包含静态数据的实际表

sql - 为什么 Oracle 从小数秒中去除前导 0?

oracle - 查询查找总和小于某个金额的行

oracle - 第一条记录上的 SQL 加载程序错误

Oracle 数据库审计跟踪

Oracle 从具有多行和多列的 Dual 中选择

sql - 从双表中选择确切的行数