sql >> Databáze >  >> RDS >> Oracle

Znovu vytvořte tabulku Oracle DUAL

Pravděpodobně byste měli kontaktovat podporu Oracle.

Máte zálohu? Pokud ano, obnovte tabulku ze zálohy. V opačném případě (a pokud kontaktování společnosti Oracle není pro vás možností)...

Oracle má speciální optimalizace pro DUAL, ale nevím, jestli je něco zvláštního na samotné tabulce. Zacházel bych s tím jako s normálním stolem a uvidím, co se stane. Zkuste toto:

Připojte se jako SYSDBA a poté spusťte tyto příkazy:

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;

A už nikdy NIKDY nic neměňte ve schématu SYS!

EDIT:Právě jsem si všiml duplikátu z DNES:https://stackoverflow. com/questions/2816478/recovering-dual-table-in-oracle - zde byly přidány návrhy.



  1. rychlý výběr náhodného řádku z velké tabulky v mysql

  2. Jak nasadit PostgreSQL do kontejneru Docker pomocí ClusterControl

  3. INSERT a SELECT GROUP BY:více cílových sloupců než výrazů chyba

  4. Jak uložit nebo načíst sloupec pole pomocí režimu spánku