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

Jak získám Oracle SCHEMA jako skripty DDL s DBMS_METADATA (a SCHEMA_EXPORT)

Ani ne tak odpověď, jako pozorování. Je technicky možné (ale v praxi pravděpodobně nesmyslné) mít kruhové odkazy v omezeních.

create table blue (blue_id number primary key, val varchar2(10), red_id number);
create table red (red_id number primary key, val varchar2(10), blue_id number);

insert into blue values (1,'test',2);
insert into red values (2,'test',1);

alter table blue add constraint blue_fk foreign key (red_id) references red (red_id);
alter table red add constraint red_fk foreign key (blue_id) references blue (blue_id);

Takže bych pochopil, kdyby se rozhodli, že protože to není nutně vždy dosažitelné, neobtěžovali by se seřazením objektů do závislosti.

Proto bych při vytváření tabulek vynechal referenční omezení a poté je aplikoval jako ALTER po vytvoření všech tabulek.




  1. Schéma zpětného inženýrství (orákula) k ERD

  2. android.database.sqlite.SQLiteException:near s:syntaktická chyba (kód 1):,

  3. PlanetScale &Vitess:Referenční integrita se staršími sdílenými databázemi

  4. Co to znamená, když je MySQL ve stavu Odesílání dat?