Oracle
 sql >> Datenbank >  >> RDS >> Oracle

So ändern Sie die Tabelle in Oracle

Wir müssen häufig die Tabelle in Oracle ändern, je nach Anforderungsänderungen und Upgrade. Hier sind einige der wichtigen Punkte über Alter table statement

  • Sie ändern oder modifizieren eine Tabelle mit ALTER TABLE  Erklärung.
  • Die Tabelle muss in Ihrem Schema enthalten sein, um eine Tabelle zu ändern, oder Sie sollten entweder das ALTER-Objektprivileg für die Tabelle oder das ALTER ANY TABLE-Systemprivileg haben.
  • Wenn eine Ansicht, eine materialisierte Ansicht, ein Trigger, ein funktionsbasierter Index, eine Prüfeinschränkung, eine Funktion, eine Prozedur oder ein Paket von einer Basistabelle abhängt, kann die Änderung der Basistabelle oder ihrer Spalten das abhängige Objekt beeinflussen, z. B. plsql-Objekte ungültig  wenn das abhängige Tabellenobjekt geändert wird und Sie sie wieder gültig machen müssen

Physische Eigenschaften (INITRANS oder Speicherparameter) ändern

Wir können den Speicherparameter der Tabelle mit der Anweisung Alter table ändern. Wir können inittrans wie folgt modifizieren

ALTER TABLE TABLE_NAME INITRANS 10;

Verschieben der Tabelle in neue Segmente oder Tablespaces

Wir können die Nicht-Partitionstabelle oder die Partition der Tabelle bei Bedarf in ein neues Segment oder einen neuen Tablespace verschieben

Ändern Sie die Tabelle Tabellenname, verschieben Sie den Tabellenbereich 

Wir können sogar den move-Befehl verwenden, um jeden Speicherparameter der Tabellen zu ändern, die nicht mit dem alter table-Befehl

geändert wurden

Ändern Sie die Tabelle in Oracle, um den Datentyp zu ändern

Wir können den Datentyp jeder Spalte mit dem Befehl alter table modify ändern

ALTER TABLE MODIFY ( );
BeforeSQL> desc emp Name Null? Typ ----------------------------------------- -------- ----------------------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) EINSTELLUNGSDATUM SAL NUMBER( 7,2) COMM NUMMER(7,2) DEPTNO NUMBER(2) AfterSQL> desc emp Name Null? Typ ----------------------------------------- -------- ---------------------------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(20) JOB VARCHAR2(9) MGR NUMBER(4) EINSTELLDATUM VERKAUFSNUMMER(7,2) KOMMUNIKATIONSNUMMER(7,2) ABTEILUNGSNUMMER(2)

Spaltendatentyp in Oracle ändern

Neue Spalte hinzufügen/Spalte löschen/Spalte umbenennen

Wir können der Tabellendefinition eine neue Spalte hinzufügen

Verwenden des Befehls „alter table add“

ALTER TABLE 
ADD (  );

Mit Oracle können Sie vorhandene Spalten in einer Tabelle umbenennen. Verwenden Sie die RENAME COLUMN Klausel der ALTER TABLE Anweisung, um eine Spalte umzubenennen

Oracle ermöglicht es Ihnen, die Spalte in der Tabelle mit dem Befehl

zu löschen

Ändere Tabelle Drop-Spalte;
Bitte lesen Sie den folgenden Artikel, um mehr darüber zu erfahren

Tabelle ändern, Spalte hinzufügen, Orakel

Stellen Sie eine nicht verwendete Spalte fest und löschen Sie die nicht verwendete Spalte

Wenn Sie sich Sorgen über den Ressourcenverbrauch beim Löschen der Spalte machen, können Sie die Anweisung ALTER TABLE…SET UNUSED verwenden.

Diese Anweisung markiert eine oder mehrere Spalten als unbenutzt, entfernt jedoch nicht die Zielspaltendaten oder stellt den von diesen Spalten belegten Speicherplatz wieder her.

  • Eine als unbenutzt markierte Spalte wird in Abfragen oder Datenwörterbuchansichten nicht angezeigt, und ihr Name wird entfernt, damit eine neue Spalte diesen Namen wiederverwenden kann. Alle für die Spalte definierten Einschränkungen, Indizes und Statistiken werden ebenfalls entfernt.
Beispiel
ALTER TABLE 
SET UNUSED COLUMN ;

Wir können die ungenutzte Spalte später löschen, wenn die Ressource niedriger ist, indem wir den Befehl

verwenden
ALTER TABLE 
Drop  UNUSED COLUMN;

Fügen Sie mit der Tabelle verknüpfte Integritätseinschränkungen hinzu, ändern oder löschen Sie sie oder Sie können die Einschränkungen auch aktivieren/deaktivieren

Das Hinzufügen von Einschränkungen erfolgt mithilfe von Alter Table Add Constraints

ALTER TABLE EMP ADD CONSTRAINT EMP_FK FOREIGN KEY (DEPT_NO) REFERENCES DEPT(DEPT_NO);

Dropping Constraints – erfolgt mit dem

Befehl ALTER TABLE DROP CONSTRAINT ;

Einschränkungen aktivieren/deaktivieren – Einschränkungen können im Modus DISABLE/ENABLE erstellt oder mit dem Befehl

deaktiviert oder aktiviert werden
ALTER TABLE ENABLE/DISABLE CONSTRAINT 

Tabellennamen umbenennen

Oracle erlaubt Ihnen auch, den Tabellennamen umzubenennen

  in  umbenennen;

Änderung des Tabellen-Cache/No-Cache, Komprimierung, Parallelität

Oracle erlaubt Änderung von Tabellen-Cache/No-Cache, Komprimierung, Parallelität

Verwandte Artikel

Alle Tabellen in Oracle auflisten
Tabelle erstellen Oracle
ora-20005:Objektstatistiken sind gesperrt
Tabellenverschiebung ändern
Wie überprüft man alle Beschränkungen einer Tabelle in Oracle
https ://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_3001.htm