sql >> Database >  >> RDS >> Oracle

Hoe de tabel te wijzigen kolom orakel toevoegen

Hoe verander ik de tabel toevoegen kolom in Oracle Database

  • U voegt een nieuwe kolom toe met de ALTER TABLE ADD COLUMN uitspraak in Oracle
  • De tabel moet in uw schema staan. Als u een tabel wilt wijzigen, moet u ofwel het objectrecht ALTER voor de tabel hebben of het systeemrecht ALTER ANY TABLE.
  • Als een weergave, gerealiseerde weergave, trigger, functie-gebaseerde index, controlebeperking, functie, procedure van pakket afhankelijk is van een basistabel, kan de wijziging van de basistabel of de kolommen ervan het afhankelijke object beïnvloeden. PLSQL-objecten worden bijvoorbeeld ongeldig  als het afhankelijke tabelobject wordt gewijzigd en u het opnieuw geldig moet maken

We kunnen een nieuwe kolom toevoegen aan de tabeldefinitie. Het commando 'tabel wijzigen' toevoegen gebruiken

ALTER TABLE tech_master ADD (name  varchar2(9));
Table Altered
  • Als vóór 11g een nieuwe kolom aan een tabel wordt toegevoegd, is de kolom aanvankelijk NULL, tenzij u de DEFAULT-clausule opgeeft. . Wanneer u een standaardwaarde opgeeft, werkt de database elke rij onmiddellijk bij met de standaardwaarde. Houd er rekening mee dat dit enige tijd kan duren en dat er tijdens de update een exclusief DML-slot op tafel ligt.
  • Voor sommige soorten tabellen (bijvoorbeeld tabellen zonder LOB-kolommen), als u zowel een NOT NULL-beperking als een standaardwaarde opgeeft, kan de database de bewerking voor het toevoegen van kolommen optimaliseren en de hoeveelheid tijd die de tabel is aanzienlijk verminderen vergrendeld voor DML. Hetzelfde is het geval voor niet-null kolomtoevoeging met standaardwaarde
  • Oracle heeft de functie voor snel toevoegen van kolommen geïntroduceerd in 11g, dus als we een niet-null-kolom met standaardwaarde of een null-kolom met standaardwaarde toevoegen, voegt Oracle de kolom onmiddellijk toe en werkt niet elke rij bij met de standaardwaarde. S
  • o het levert geen boete op voor het opnieuw uitvoeren en het ongedaan maken van het genereren. Wanneer een gebruiker de kolom voor een bestaand record selecteert, haalt Oracle het feit over de standaardwaarde uit de datadictionary en stuurt het terug naar de gebruiker.

U kunt niet opgeven waar de kolom moet worden weergegeven. De nieuw toegevoegde kolom wordt de laatste kolom

 Op dezelfde manier kunnen we meerdere kolommen  aan de tabel toevoegen

ALTER TABLE table_name
ADD (col1 column datatype [default  expr],
col2 column datatype [default  expr],
...
coln column datatype [default  expr]);

Example
ALTER TABLE customer_master
ADD (location_name varchar2(100),
last_login date);

Naamconventies voor kolommen  zijn hetzelfde als in het geval van de instructie Create table

  • 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
  • het kan cijfers en onderstrepingstekens bevatten
  • Kan HOOFDLETTERS of kleine letters zijn
  • Kan maximaal 30 tekens lang zijn
  • Kan niet dezelfde naam van een ander bestaand object in uw schema gebruiken
  • Mag geen Oracle-server en SQL-gereserveerd woord zijn

Gegevenstypen zijn weer hetzelfde als de instructie Create Table

Karakter -CHAR, NCHAR, VARCHAR2 &NVARCHAR2.
– Het CHAR-gegevenstype is een alfanumerieke tekenreeks met een vaste lengte en een maximale lengte in bytes.
-Bij het maken van een CHAR-gegevenstype, behoudt de database ruimte voor de binnenkomende gegevens en als de gegevens kleiner zijn dan de maximale grootte, wordt deze naar rechts met een spatie gevuld
-Het VARCHAR2-gegevenstype is een variabele -lengte alfanumerieke tekenreeks, die een maximale lengte heeft in bytes. Het kan tot 4000 bytes opslaan.
Nummer -NUMBER
-Het datatype NUMBER slaat getallen op met precisie en schaal.
-Numerieke datatypes slaan negatieve en positieve gehele getallen op, vaste-kommagetallen en drijvende-kommagetallen
– Wanneer een kolom is gedefinieerd als NUMBER (6, 2), kan het waardenbereik worden opgeslagen van –9999.99 tot 9999,99. Oracle rondt de getallen met drijvende komma af.
Datum en tijd –DATUM, TIJDSTEMPEL (met tijdzone of lokale tijdzone), INTERVAL VAN JAAR NAAR MAAND &INTERVAL VAN DAG TOT SECOND.
-Het gegevenstype DATE wordt gebruikt om datum- en tijdinformatie op te slaan.
-Dit datatype heeft een aantal specifieke functies voor het manipuleren, formatteren en bekijken van de data.
– Het datatype DATE bevat zeven bytes en bevat informatie over eeuw, jaar, maand, dag, uren, minuten en seconden.
– De parameter NLS_DATE_FORMAT kan worden gewijzigd om het bekijken van de gegevens te regelen. De functie SYSDATE geeft de huidige datum terug
Grote objecten -BLOB (binair groot object) , CLOB (karakter groot object) , NCLOB &BFILE
-Kolommen van deze datatypes kunnen ongestructureerde data opslaan, inclusief tekst, afbeeldingen, video en ruimtelijke data. -Het CLOB-gegevenstype kan maximaal acht terabytes aan tekengegevens opslaan met behulp van de CHAR-databasetekenset.
-Het BLOB-gegevenstype wordt gebruikt om ongestructureerde binaire grote objecten op te slaan, zoals objecten die zijn gekoppeld aan afbeeldings- en videogegevens, waarbij de gegevens eenvoudigweg een stroom van "bit" -waarden zijn.
-De waarde van het BFILE-gegevenstype werkt als een bestandszoeker of verwijzing naar een bestand op het bestandssysteem van de server. De maximale ondersteunde bestandsgrootte is 8TB tot 128TB.
Lang Tekengegevens met variabele lengte tot 2 G
ruzie Een systeem met 64 grondtalen dat het unieke adres van de rij in de tabel vertegenwoordigt

Voorbeeld

Voordat kolom wordt toegevoegd

Desc emp

Tabel wijzigen kolom toevoegen

alter table emp add(ext varchar2(10));

Na het toevoegen van een kolom

Desc emp

Laat die kolom nu vallen

alter table emp drop column ext;

Ik hoop dat je het artikel over Hoe je de kolom voor het toevoegen van tabellen in Oracle kunt wijzigen, leuk vindt

Gerelateerde artikelen
oracle maakt tabelsyntaxis
Tabel wijzigen in Oracle
tabel verplaatsen
DROP TABLE ORACLE-instructie
controleer de grootte van de orakeltabel
ora-2005:objectstatistieken zijn vergrendeld


  1. SUM() Functie in MariaDB

  2. Hiërarchische lijst met typen triggergebeurtenissen in SQL Server 2019

  3. SSMS wordt nu geleverd met Azure Data Studio

  4. PostgreSQL, complexe query voor het berekenen van ingrediënten op recept