Oracle Autowert/Autoincrement

Werbung
Glück IT
IT Beratung, Schulung und Entwicklung
1. Tipps & Tricks
2. Oracle
Autowerte in Oracle (Autoincrement)
In Datenbanken ist das Anlegen eines Primärschlüssels mit Autowert oft trivial. Somit ist die Datenbank selbst für die Vergabe von
Schlüsseln zuständig. Auch bei Oracle gibt es Sequenzen, die diese Aufgabe erfüllen. Allerdings ist es notwendig, ein wenig
nachzuhelfen, damit dies vollautomatisch geschieht.
Das folgende Skript legt in einer Oracle Datenbank einen Trigger an, der automatisch einen Wert aus einer Sequenz ermittelt und in die
Primärschlüsselspalte schreibt. Somit brauchen Sie beim Einfügen eines neuen Datensatzes mit INSERT die Primärschlüsselsplate nicht mehr
anzugeben, beziehungsweise zu füllen.
create or replace trigger Artikel_autoinc
before insert on Artikel for each row
begin
if :new.Artikel_Nr$ is null then
select Artikel_auto.nextval into :new.Artikel_Nr$ from dual;
end if;
end;
Das Beispiel erstellt einen Trigger für eine Tabelle mit dem Namen "Artikel" und den darin enthaltenen Primärschlüssel Artikel_Nr. Die Sequenz,
die Sie für dieses Beispiel benötigen, legen Sie mit folgender Zeile an:
CREATE SEQUENCE Artikel_auto;
Ab jetzt reicht es aus, wenn Sie beim Hinzufügen von neuen Datensätzen, nur noch "normale" Attribute
angeben. Den Primärschlüssel entfällt, er wird automatisch gefüllt.
INSERT INTO Artikel (Artikelname, Einzelpreis) VALUES ('Echt kölnisch Wasser', 47.11);
Artikel als PDF herunterladen
07.04.2017 16:18:53 by CMAssist
http://www.dozent.net/Tipps-Tricks/Oracle/178/
Seite 1
Herunterladen