Dit artikel gaat over het maken van een tabel in Oracle, primaire sleutel, buitenlandse sleutels, het maken van tabelsyntaxis in Oracle met voorbeelden. Dit is erg handig voor zowel Oracle DBA's als ontwikkelaars. Ze spelen er vele malen per dag mee en goede kennis kan hen zeker helpen de taak te versnellen. Ze raken vaak in de war over het datatype en wat ze in welke omstandigheden moeten gebruiken. Hier probeer ik een overzicht te geven van alle nuttige dingen voor Oracle-databasetabellen
Wat is Oracle-databasetabel?
-Tabellen zijn de basiseenheid voor gegevensopslag in een Oracle-database. Gegevens worden opgeslagen in rijen en kolommen.
-Een tabel bevat al het nodige over iets in de echte wereld
-Een tabel bevat een reeks kolommen. Een kolom vertegenwoordigt één soort gegevens in de tabel. De salariskolom in de EMP-tabel bevat bijvoorbeeld de salarissen
- Een rij is een verzameling kolominformatie die overeenkomt met een enkele record.
Vervolgens zullen we in detail praten over Oracle create table statement
Een tabel maken in oracle
Om een tabel in de database te maken, hebben we de volgende informatie nodig
- De tabelnaam
- Tabeltype
- Beperkingen
- tabelopslagparameter
Laten we elk van deze in detail bekijken
Tabelnaamconventies voor Oracle-tabel maken
- De naam die u voor een tafel kiest, moet aan deze standaardregels voldoen:
- De naam moet beginnen met een letter A-Z of a-z
- Kan cijfers en onderstrepingstekens bevatten
- Kan in HOOFDLETTERS of kleine letters staan
- Kan maximaal 30 tekens lang zijn. Met 12.2 is het uitgebreid tot 128 tekens
- Kan niet dezelfde naam van een ander bestaand object in uw schema gebruiken
- Mag geen Oracle-server en SQL-gereserveerd woord zijn
- Kolomnaam, kolomgegevenstypen en kolomgroottes.
Naamconventies voor kolommen –
- De naam die u voor een kolom kiest, moet aan deze standaardregels voldoen:
- De naam moet beginnen met een letter A-Z of a-z
- Kan cijfers en onderstrepingstekens bevatten
- Kan in HOOFDLETTERS of kleine letters staan
- Kan maximaal 30 tekens lang zijn. Met 12.2 is het uitgebreid tot 128 tekens
- Kan niet dezelfde naam van een ander bestaand object in uw schema gebruiken
- Mag geen Oracle-server en SQL-gereserveerd woord zijn
Type tafel
Gewone (op een hoop geordende) tafel
-Dit is het standaard type tafel voor algemene doeleinden.
-De gegevens worden opgeslagen als een niet-geordende verzameling (heap)
Geclusterde tabel
-Een geclusterde tabel is een tabel die deel uitmaakt van een cluster.
-Een cluster is een groep tabellen die dezelfde gegevensblokken delen omdat ze gemeenschappelijke kolommen delen en vaak samen worden gebruikt.
Index-georganiseerde tabel
-In tegenstelling tot een gewone (heap-georganiseerde) tabel, worden gegevens voor een index-georganiseerde tabel opgeslagen in een B-tree-indexstructuur op een primaire sleutel gesorteerde manier.
-Naast het opslaan van de primaire sleutelkolomwaarden van een index-georganiseerde tabelrij, slaat elk indexitem in de B-tree ook de niet-sleutelkolomwaarden op.
Gepartitioneerde tabel
Met Oracle Partitioned-tabellen kunnen uw gegevens worden opgesplitst in kleinere, beter beheersbare stukken die partities worden genoemd, of zelfs subpartities.
- Elke partitie kan afzonderlijk worden beheerd en kan onafhankelijk van de andere partities werken, waardoor een structuur wordt geboden die beter kan worden afgestemd op beschikbaarheid en prestaties.
Externe tabel
Met externe Oracle-tabellen kan Oracle gegevens opvragen die buiten de database zijn opgeslagen in platte bestanden.
Globale tijdelijke tabel
De gegevens in een globale tijdelijke tabel zijn privé, zodat gegevens die door een sessie zijn ingevoegd, alleen toegankelijk zijn voor die sessie. De sessiespecifieke rijen in een globale tijdelijke tabel kunnen worden bewaard voor de hele sessie, of alleen voor de huidige transactie
Beperkingen en regels
U kunt regels opgeven voor elke kolom van een tabel. Deze regels worden integriteitsbeperkingen genoemd. Een voorbeeld hiervan is een integriteitsbeperking die niet nul is. Deze beperking dwingt de kolom om een waarde in elke rij te bevatten. Deze regels worden afgedwongen geplaatst voor elke kolom of reeks kolommen. Telkens wanneer de tafel deelneemt aan gegevensacties, worden deze regels gevalideerd en leiden ze tot uitzonderingen bij overtreding.
Een beperking kan een van de volgende zijn:
- een beperking op kolomniveau
Beperkingen op kolomniveau verwijzen naar één kolom in de tabel en specificeren geen kolomnaam (behalve controlebeperkingen). Ze verwijzen naar de kolom die ze volgen.
- een beperking op tabelniveau
Beperkingen op tabelniveau verwijzen naar een of meer kolommen in de tabel. Beperkingen op tabelniveau specificeren de namen van de kolommen waarop ze van toepassing zijn. CHECK-beperkingen op tabelniveau kunnen verwijzen naar 0 of meer kolommen in de tabel.
De beschikbare typen beperkingen zijn NOT NULL, Primary Key, Unique, Check en Foreign Key.
Primaire sleutel
Een primaire sleutel in Oracle is een kolom in een tabel waarvan de waarden de rij in de tabel op unieke wijze identificeren. Een primaire sleutelwaarde:
a) Moet de rij uniek identificeren;
b) mag geen NULL-waarden hebben;
Oracle creëert intern een unieke orakelindex om duplicatie in de kolomwaarden te voorkomen. Het kan worden gedefinieerd op kolom- of tabelniveau
Een primaire sleutel kan ook uit meerdere kolommen bestaan
Unieke sleutel
Unieke sleutel in Oracle betekent uniciteit voor de kolom. De Oracle-server staat geen dubbele waarden toe in de kolom met unieke beperkingen. Oracle maakt intern een unieke index om duplicatie in de kolomwaarden te voorkomen. Maar het staat toe dat sommige waarden null zijn. Het kan worden gedefinieerd op kolom- of tabelniveau
Buitenlandse sleutel
-Een externe sleutel in Oracle is een referentiële beperking tussen twee tabellen.
-Een externe-sleutelbeperking valideert de waarden van een INSERT of UPDATE tegen de waarden in een andere kolom, in een andere tabel of in een andere kolom in dezelfde
-Een externe sleutel definieert altijd een ouder/kind-relatie. De "ouder" is de kolom waarnaar wordt verwezen in de externe sleutel en de "kind" is de kolom of kolommen die de beperking van de externe sleutel bevatten.
-Over het algemeen is een externe sleutel echter een veld (of velden) dat verwijst naar de primaire sleutel van een andere tabel.
-Het kan worden gedefinieerd op kolom- of tabelniveau
Beperking controleren
Een Oracle-controlebeperking vereist een waarde in de database om te voldoen aan een opgegeven voorwaarde. Met de controlebeperking kan een voorwaardelijke regel worden opgelegd aan een kolom, die moet worden gevalideerd voordat gegevens in de kolom worden ingevoegd. De voorwaarde mag geen subquery of pseudokolom CURRVAL NEXTVAL, LEVEL, ROWNUM of SYSDATE bevatten.
Oracle staat toe dat een enkele kolom meer dan één CHECK-beperking heeft. In feite is er geen praktische limiet voor het aantal CHECK-beperkingen dat voor een kolom kan worden gedefinieerd.
Het kan worden gedefinieerd op kolom- of tabelniveau
Niet Null
Dit betekent dat een gegevensrij een waarde voor de kolom moet hebben die is opgegeven als NOT NULL. De Oracle-server staat niet toe dat rijen worden opgeslagen die deze beperking schenden. Het kan alleen worden gedefinieerd op kolomniveau en niet op tabelniveau.
Tabelopslagparameter
Tabellen worden opgeslagen in Oracle Tablespace in de database. Als er geen Tablespace is opgegeven, gaat de tabel naar de standaard Tablespace van de gebruiker.
Dus in een notendop
1) U moet de juiste kolomnaam en tabelnaam kiezen volgens de bovenstaande standaard. Het wordt aanbevolen om de kolomnaam en tabelnaam zo te geven dat u het doel kunt identificeren door de namen te controleren
2) Ten tweede moet u het juiste Oracle-gegevenstype voor de tabel kiezen.
Als het een tekenreeks is, moeten we VARCHAR2 (10) kiezen. Dit is een variabele tekenreeks, we moeten de waarde op de juiste manier kiezen. Dit betekent dat het tekens kan opslaan tot 10 bytes. De gebruikte ruimte is afhankelijk van de waarden in de kolom en er wordt geen ruimte verspild.
Ik wil hier één ding benadrukken dat wanneer we VARCHAR2 (10) hier 10 het aantal bytes geven, niet het teken. begin andere tekens dan ASCII te gebruiken
Op dit moment ondersteunt VARCHAR2 4000 bytes. Als uw kolom groter is, kunt u het LOB-gegevenstype gebruiken, dat tekst kan opslaan voor GIGA-bytes.
Als het een getal is, gebruiken we het datatype Nummer. Opnieuw kunnen we de waarde op de juiste manier kiezen. Voorbeeldnummer(6,2) Dit kan maximaal 999999,99 bevatten
Als u datum wilt opslaan, heeft Oracle het datatype datum voor opslag verstrekt.
3) Identificeer de beperking op de tafel. Bepaal wat de primaire sleutel is en welke kolommen niet null zijn.
Zodra we alle vereiste informatie hebben, kunnen we doorgaan met het maken van tabellen
Oracle maakt tabelsyntaxis
CREATE TABLE table_name ( col1 datatype [ NULL | NOT NULL ], col2 datatype [ NULL | NOT NULL ], ... col_n datatype [ NULL | NOT NULL ] ) tablespace <tablepace name>;
SYNTAX voor de primaire sleutel van Oracle Create Table. Het kan zowel op kolomniveau als op tabelniveau worden gedefinieerd
Table level CREATE TABLE table_name ( col1 datatype [ NULL | NOT NULL ], col2 datatype [ NULL | NOT NULL ], ... col_n datatype [ NULL | NOT NULL ] constraint <name> primary key (col1,col2) ) tablespace <tablepace name> Column Level CREATE TABLE table_name ( col1 datatype [ NULL | NOT NULL ] constraint <name> primary key , col2 datatype [ NULL | NOT NULL ], ... col_n datatype [ NULL | NOT NULL ] ) tablespace <tablepace name>
Voorbeeld van oracle create Table primaire sleutel
CREATE TABLE SCOTT.TEST ( Created_by date, SOURCE CHAR(10), REQUEST_ID CHAR(64) NOT NULL CONSTRAINT TEST_PK PRIMARY KEY, COMMENTS VARCHAR(3000) ); CREATE TABLE TESTEXP ( INV_ID CHAR(7) NOT NULL, ITEM_ID CHAR(7) NOT NULL, CREATED date, WHO CHAR(7), CONSTRAINT TEST1_PK PRIMARY KEY (INV_ID,ITEM_ID) );
Oracle maakt index om de primaire sleutelbeperkingen af te dwingen
Gerelateerd:Oracle-interviewvragen
De uitleg voor tabel TEST1
1 | De eerste kolom heet inv_id die is gemaakt als een char-gegevenstype (maximaal 7 cijfers lang) en geen null-waarden mag bevatten |
2 | De tweede kolom heet item_id die is gemaakt als een char-gegevenstype (maximaal 7 cijfers lang) en geen null-waarden mag bevatten |
3 | De derde kolom heet 'gemaakt', wat een datum is datatype en kan ook null-waarden bevatten. |
4 | De vierde kolom heet wie, wat een char-gegevenstype is en ook null-waarden kan bevatten. |
5 | Beperking primaire sleutel op tabelniveau TEST1_PK is gedefinieerd op de samengestelde sleutel (INV_ID, ITEM_ID) |
SYNTAX voor Oracle Create Table-instructie FOREIGN Key. Het kan zowel op kolomniveau als op tabelniveau worden gedefinieerd
CREATE TABLE table_name ( col1 datatype [ NULL | NOT NULL ], col2 datatype [ NULL | NOT NULL ], ... col_n datatype [ NULL | NOT NULL ] constraint <name> FOREIGN KEY (col1,col2) REFERENCES table(col1,col2) ) tablespace <tablepace name> CREATE TABLE table_name ( col1 datatype [ NULL | NOT NULL ] constraint <name> primary key , col2 datatype [ NULL | NOT NULL ], ... col_n datatype [ NULL | NOT NULL ] ) tablespace <tablepace name>; CREATE TABLE dept ( dept_id number(10) NOT NULL, dept_name varchar2(50) NOT NULL, CONSTRAINT dept_pk PRIMARY KEY (dept_id) ); CREATE TABLE emp ( emp_no number(10) NOT NULL, emp_name varchar2(50) NOT NULL, dept_id number(10), sal number(6), CONSTRAINT emp_pk PRIMARY KEY (emp_no), CONSTRAINT dept_fk FOREIGN KEY (dept_id) REFERENCES dept(dept_id) );
Uitleg voor tabel EMP
1 | De eerste kolom heet EMP_NO die is gemaakt als een getal en mag geen null-waarden bevatten |
2 | De tweede kolom heet emp_name die is gemaakt als varchar2(50) en mag geen null-waarden bevatten |
3 | De derde kolom heet dept_id dat is een getal. |
4 | De vierde kolom heet sal wat een getalsgegevenstype is en ook null-waarden kan bevatten. |
5 | Primaire sleutelbeperking op tabelniveau EMP_PK is gedefinieerd op de sleutel (EMP_NO) |
6 | Restricties van externe sleutels op tabelniveau dept_fk die verwijzen naar dept table dept_id |
Bevoegdheid vereist om tabel Oracle te maken
-U moet het systeemrecht voor het maken van tabellen hebben om een nieuwe tabel in uw schema te kunnen maken,
- U moet het systeemrecht voor het maken van tabellen hebben om een tabel in het schema van een andere gebruiker te kunnen maken. Bovendien moet de eigenaar van de tabel een quotum hebben voor de tabelruimte die de tabel bevat, of het systeemrecht UNLIMITED TABLESPACE li>
Gerelateerd:SQL-query's schrijven
Andere kenmerken die verband houden met de Oracle-databasetabel
Cache/geen cache
Gebruik de CACHE-clausules om aan te geven hoe Oracle Database blokken in de buffercache moet opslaan. Als u niets opgeeft in het commando 'tabel maken', is dit standaard geen cache
STANDAARD
De waarde die in de kolom wordt ingevoegd als het invoegen of bijwerken de kolomwaarde NULL zou laten.
PARALLEL
Geef PARALLEL op als u wilt dat Oracle een mate van parallellisme selecteert die gelijk is aan het aantal CPU's dat beschikbaar is op alle deelnemende instanties maal de waarde van de PARALLEL_THREADS_PER_CPU-initialisatieparameter.
Comprimeren
Dit wordt door het orakel gebruikt om de tabel in gecomprimeerd formaat op te slaan. Dit is beschikbaar vanaf 11g
Reageer op een tabel of kolom
U kunt commentaar geven op de tabel met het commando
COMMENT ON TABLE <table_name> IS '<comment>';
Oracle maakt tabel met standaardwaarde
Soms wilt u een standaardwaarde aan de kolom toewijzen als deze niet is opgegeven in de insert-instructie, dan kunt u de tabel maken met de onderstaande syntaxis. DEFAULT is het gebruikte trefwoord
CREATE TABLE EXP ( NAME VARCHAR2(20), SAL number(8,2) DEFAULT 800, hire_date DATE DEFAULT SYSDATE , birthdate DATE DEFAULT SYSDATE -10 )
Oracle maakt tabel standaardwaardewijzigingen in 12c
IDENTITY-kolommen
In Oracle Database 12c kunnen we tabelkolommen definiëren met het SQL-sleutelwoord IDENTITY, een SQL-sleutelwoord van het American National Standards Institute (ANSI). Die automatisch worden verhoogd op het moment van invoegen (zoals in MySQL).
Example: create table test ( id number generated as identity, name varchar2(100), email varchar2(100), password varchar2(100), firstname varchar2(100), lastname varchar2(100) );
Sequence as Default Value With Oracle Database 12c, we can directly assign sequence nextval as a default value for a column, So you no longer need to create a trigger to populate the column with the next value of sequence, you just need to declare it with table definition.It is a sort of auto-increment feature for a column in oracle just like MySQL
Example: create sequence tech_test_seq start with 1 increment by 1 nocycle;create table test ( id number default tech_test_seq.nextval primary key name varchar(30) );
Alleen standaardwaarden voor metagegevens
Vóór pre, Oracle 11g, vereiste het toevoegen van een nieuwe kolom aan een bestaande tabel dat alle rijen in die tabel moesten worden aangepast om de nieuwe kolom toe te voegen. Dus als de tabel erg groot is, kostte het veel tijd om de kolom toe te voegen aan de tabel en de vergrendelingstijd en ook meer
Met Oracle introduceerde 11g het concept van standaardwaarden voor alleen metadata. Het toevoegen van een NOT NULL-kolom met een DEFAULT-clausule aan een bestaande tabel betrof slechts een wijziging van de metagegevens, in plaats van een wijziging van alle rijen in de tabel. Query's van de nieuwe kolom zijn herschreven door de optimizer om er zeker van te zijn dat het resultaat consistent was met de standaarddefinitie.
Lees daar meer over in onderstaand artikel
Hoe verander je tabel toevoegen kolom orakel
Oracle 12c gaat nog een stap verder en biedt alleen metadata standaardwaarden van zowel verplichte als optionele kolommen. Als gevolg hiervan wordt het toevoegen van een nieuwe kolom met een DEFAULT-clausule aan een bestaande tabel behandeld als een wijziging met alleen metagegevens, ongeacht of die kolom is gedefinieerd als NOT NULL of niet.
Dit is een enorm voordeel voor iedereen.
Datawoordenboektabellen en -weergaven
Alle tabel- en kolominformatie wordt opgeslagen in de tabellen SYS.TAB$ en SYS.COL$. Oracle heeft datadictionary-weergaven geleverd om informatie te krijgen over tabellen en kolommen
Er zijn drie categorieën weergaven
Alle tabellen in Oracle weergeven
To list all tables owned by the current user, type: select tablespace_name, table_name from user_tables; To list all tables in a database: select tablespace_name, table_name from dba_tables; To list all tables accessible to the current user, type: select tablespace_name, table_name from all_tables To describe the table in SQLPLUS desc <table_name>
Hoe de tafelgrootte te bepalen
select owner as "Schema" , segment_name as "Object Name" , segment_type as "Object Type" , round(bytes/1024/1024,2) as "Object Size (Mb)" , tablespace_name as "Tablespace" from dba_segments where segment_name=’<table_name>’;
Tabellen met aantal rijen en opmerkingen
De onderstaande zoekopdracht kan worden gebruikt om het aantal rijen en opmerkingen in het SCOTT-schema te vinden
select tab.owner as schema_name,
tab.table_name as table_name,
obj.created,
obj.last_ddl_time as last_modified,
tab.num_rows,
tab.last_analyzed,
comm.comments
from all_tables tab
inner join all_objects obj
on obj.owner = tab.owner
and obj.object_name = tab.table_name
left outer join all_tab_comments comm
on tab.table_name = comm.table_name
and tab.owner = comm.owner
where tab.owner = 'SCOTT'
order by tab.owner,
tab.table_name;
Veelgestelde vragen over Oracle Create Table
1. Heeft oracle de opdracht Create of Replace Table Oracle?
Oracle heeft geen opdracht voor het maken of vervangen van een tabelorakel. Maken of vervangen is alleen geldig voor views, PLSQL:alleen procedures. U hoeft de wijziging alleen uit te voeren met het ALTER Table-commando
Of u kunt de tabel expliciet verwijderen en opnieuw maken
we hebben geen directe, maar je kunt PLSQL gebruiken om dat te emuleren
SERVEROUTPUT INSTELLEN OP
DECLARE c_emp int:=0;
BEGIN SELECTEER count(*) in c_emp FROM dba_tables waar table_name ='EMP';
if c_emp<=0
VOER ONMIDDELLIJK 'create table EMP (ID NUMBER (3), NAME VARCHAR2( 30) NOT NULL,SAL NUMBER*,2))';
end if;
END;
/
Voorbeeldschema om te oefenen
SQL>CREATE TABLE "DEPT" ( "DEPTNO" NUMBER(2,0), "DNAME" VARCHAR2(14), "LOC" VARCHAR2(13), CONSTRAINT "PK_DEPT" PRIMARY KEY ("DEPTNO") ) SQL>CREATE TABLE "EMP" ( "EMPNO" NUMBER(4,0), "ENAME" VARCHAR2(10), "JOB" VARCHAR2(9), "MGR" NUMBER(4,0), "HIREDATE" DATE, "SAL" NUMBER(7,2), "COMM" NUMBER(7,2), "DEPTNO" NUMBER(2,0), CONSTRAINT "PK_EMP" PRIMARY KEY ("EMPNO"), CONSTRAINT "FK_DEPTNO" FOREIGN KEY ("DEPTNO") REFERENCES "DEPT" ("DEPTNO") ENABLE ); SQL> desc emp Name Null? Type ----------------------------------------- -------- ----------------------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2) SQL> SQL> desc dept Name Null? Type ----------------------------------------- -------- ----------------------- DEPTNO NOT NULL NUMBER(2) DNAME VARCHAR2(14) LOC VARCHAR2(13) SQL> insert into DEPT values(10, 'ACCOUNTING', 'NEW YORK'); insert into dept values(20, 'RESEARCH', 'DALLAS'); insert into dept values(30, 'RESEARCH', 'DELHI'); insert into dept values(40, 'RESEARCH', 'MUMBAI'); insert into emp values( 7698, 'Blake', 'MANAGER', 7839, to_date('1-5-2007','dd-mm-yyyy'), 2850, null, 10 ); insert into emp values( 7782, 'Clark', 'MANAGER', 7839, to_date('9-6-2008','dd-mm-yyyy'), 2450, null, 10 ); insert into emp values( 7788, 'Scott', 'ANALYST', 7566, to_date('9-6-2012','dd-mm-yyyy'), 3000, null, 20 ); insert into emp values( 7789, 'TPM', 'ANALYST', 7566, to_date('9-6-2017','dd-mm-yyyy'), 3000, null, null ); insert into emp values( 7560, 'T1OM', 'ANALYST', 7567, to_date('9-7-2017','dd-mm-yyyy'), 4000, null, 20 ); insert into emp values( 7790, 'TOM', 'ANALYST', 7567, to_date('9-7-2017','dd-mm-yyyy'), 4000, null, null ); SQL> select * from emp; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- --------- ---------- ---------- ---------- 7698 BLAKE MANAGER 7839 01-MAY-07 2850 10 7782 CLARK MANAGER 7839 09-JUN-08 2450 10 7788 SCOTT ANALYST 7566 09-JUN-12 3000 20 7789 TPM ANALYST 7566 09-JUN-17 3000 7790 TOM ANALYST 7567 09-JUL-17 4000 7560 T1OM ANALYST 7567 09-JUL-17 4000 20 After the practice is over, you can drop the tables SQL>drop table emp; SQL>drop table dept;
Ik hoop dat je dit artikel over Oracle Create Table-statement, commando, syntaxis en tips leuk vindt.
Gerelateerde artikelen
tabel wijzigen kolom orakel toevoegen:Nuttig inzicht in het wijzigen van tabel toevoegen kolom orakel. Details over de functie voor snel toevoegen van kolommen die in oracle 11g is geïntroduceerd, worden ook gegeven
DROP TABLE ORACLE:meer informatie over het neerzetten van een tabel in Oracle, het verwijderen van een tabel indien aanwezig in Oracle, het neerzetten van meerdere tabellen in één opdracht, het neerzetten van cascadebeperkingen voor de tabel
alter tabel verplaatsen:bekijk dit bericht voor de stapsgewijze methode voor het opnieuw opbouwen van de tabel in oracle met behulp van tabelverplaatsing wijzigen, het opnieuw opbouwen van een tabel met lobs, lange kolom
Truncate TABLE Oracle:Truncate TABLE in Oracle is sneller dan verwijderen uit de tabel in orakel. Het is een DDL-instructie en het activeert niet de triggers voor verwijderen
Tabel wijzigen in Oracle:Tabel wijzigen in Oracle wordt gebruikt om een kolom te wijzigen, beperkingen te verwijderen en toe te voegen, het gegevenstype van de tabelkolom te wijzigen, de tabel te wijzigen opslagparameters
oracle lijst alle tabellen:we kunnen de lijst met alle tabellen in Oracle krijgen door all_tables of user_tables of dba_tables op te vragen. we kunnen de kolom en waar-clausule selecteren volgens de behoefte
Aanvullende logboekregistratie in Oracle
oracle sql-datumfuncties
https://docs.oracle.com/cd/B19306_01/server.102/ b14231/tables.htm
Een globale tijdelijke tabel maken in Oracle