Inhaltsverzeichnis
1. Einführung in Sequenzen
2. Erstellen Sie eine Sequenz
3. Abfragesequenz
4. Verwenden Sie die Pseudospalten Sequenz
Zum Beispiel:
7. Automatisch inkrementierende Sequenz erstellen
2. Einen Trigger erstellen
Heim Datenbank Oracle Oracle-Sequenz-SEQUENCE-Analyse

Oracle-Sequenz-SEQUENCE-Analyse

Jul 28, 2022 pm 03:49 PM
oracle

Dieser Artikel vermittelt Ihnen relevantes Wissen über Oracle und erklärt die Sequenz SEQUENCE in Oracle im Detail. Der Artikel stellt sie anhand von Beispielcode ausführlich vor. Es hat einen gewissen Referenzwert für das Studium oder die Arbeit eines jeden und ich hoffe, dass es für jeden hilfreich sein wird.

Oracle-Sequenz-SEQUENCE-Analyse

Empfohlenes Tutorial: „Oracle-Video-Tutorial

1. Einführung in Sequenzen

Oracles Sequenz ist ein Datenbankobjekt, dessen Hauptfunktion darin besteht, eindeutige Werte zu generieren. Nachdem die Sequenz erstellt wurde, kann das Sequenzobjekt über das Datenwörterbuch gefunden werden, sodass die Sequenz von mehreren Objekten gemeinsam genutzt werden kann.

2. Erstellen Sie eine Sequenz

Die Sequenz wird mit der CREATE SEQUENCE-Syntax erstellt:

CREATE SEQUENCE sequence 
[INCREMENT BY n]
 [START WITH n]
 [{MAXVALUE n | NOMAXVALUE}]
 [{MINVALUE n | NOMINVALUE}]
 [{CYCLE | NOCYCLE}]
 [{CACHE n | NOCACHE}];
Nach dem Login kopieren
  • NCREMENT BY: Wird verwendet, um die Schrittgröße der Sequenz zu definieren. Wenn sie weggelassen wird, ist sie standardmäßig 1 , der Wert, der die Sequenz darstellt, ist Abnehmend.
  • START WITH: Definiert den Anfangswert der Sequenz (d. h. den ersten generierten Wert), der Standardwert ist 1.
  • MAXVALUE: Definiert den maximalen Wert, den die Sequenz generieren kann. NOMAXVALUE ist die Standardoption, was bedeutet, dass es keinen Maximalwert gibt. Zu diesem Zeitpunkt beträgt der maximale Wert, den das System erzeugen kann, 10 hoch 27, während der Maximalwert -1 ist.
  • MINVALUE: Definiert den Mindestwert, den die Sequenz generieren kann. NOMINVALUE ist die Standardoption, was bedeutet, dass es zu diesem Zeitpunkt keinen Mindestwert gibt, den das System für die absteigende Folge erzeugen kann: minus 10 hoch 26; für die absteigende Folge beträgt der Mindestwert 1.
  • CYCLE und NOCYCLE: Geben an, ob eine Schleife ausgeführt werden soll, wenn der Wert des Sequenzgenerators den Grenzwert erreicht. Bei einer Schleife erfolgt die Schleife, wenn die aufsteigende Sequenz den Maximalwert erreicht. Bei der absteigenden Sequenz erfolgt die Schleife auf den Maximalwert, wenn sie den Minimalwert erreicht. Wenn Sie keine Schleife ausführen, kommt es nach Erreichen des Grenzwerts zu einem Fehler, wenn Sie weiterhin neue Werte generieren.
  • CACHE: Definiert die Größe des Speicherblocks zum Speichern der Sequenz, der Standardwert ist 20. NOCACHE bedeutet keine Speicherpufferung der Sequenz. Durch die Speicherpufferung von Sequenzen kann die Sequenzleistung verbessert werden.

Zum Beispiel:

CREATE SEQUENCE invoice_seq
INCREMENT BY 1
START WITH 1
MAXVALUE 9999999
NOCYCLE NOCACHE;
Nach dem Login kopieren

3. Abfragesequenz

Sobald die Sequenz erstellt ist, wird der Sequenzerstellungscode im Datenwörterbuch textualisiert und kann im Datenwörterbuch user_objects angezeigt werden, z. B.:

SELECT object_name,object_id,object_type  FROM user_objects WHERE object_name = 'INVOICE_SEQ';
Nach dem Login kopieren

In den user_sequences Tabelle Gespeicherte Sequenzdetails:

SELECT sequence_name, min_value, max_value, increment_by, last_number  FROM user_sequences;
Nach dem Login kopieren

4. Verwenden Sie die Pseudospalten Sequenz

NEXTVAL: Gibt jedes Mal einen eindeutigen referenzierten Wert zurück, tatsächlich für verschiedene Benutzer. Bei Verwendung von sequence.NEXTVAL wird eine neue Sequenznummer generiert und die aktuelle Sequenznummer in CURRVAL eingefügt.
  • CURRVAL: Ermitteln Sie den aktuellen Sequenzwert. Wenn Sie CURRVAL verwenden, bevor Sie NEXTVAL zum ersten Mal verwenden, wird ein Fehler gemeldet.
  • Wird wie folgt verwendet:
SELECT invoice_seq.CURRVAL,invoice_seq.NEXTVAL FROM DUAL;

INSERT INTO invoice  (invoice_id, vendor_id, invoice_number, invoice_total  )
      VALUES (invoice_seq.NEXTVAL, 10, 'INV' || invoice_seq.CURRVAL, 100  );
Nach dem Login kopieren

NEXTVAL und CURRVAL können im folgenden Kontext verwendet werden:

Die Feldliste einer SELECT-Anweisung, die nicht Teil einer Unterabfrage ist.
  • SELECT-Liste der Unterabfragen in der INSERT-Anweisung.
  • VALUES-Klausel in der INSERT-Anweisung.
  • SET-Klausel in der UPDATE-Anweisung.
NEXTVAL und CURRVAL können nicht im folgenden Kontext verwendet werden:

SELECT-Liste einer Ansicht.
  • SELECT-Anweisung mit DISTINCT.
  • SELECT-Anweisung mit GROUP BY-, HAVING- oder ORDER BY-Klausel.
  • Klauseln in SELECT-, DELETE- oder UPDATE-Anweisungen.
  • DEFAULT-Ausdruck in der CREATE TABLE- oder ALTER TABLE-Anweisung.
  • Beachten Sie außerdem, dass ROLLBACK den Sequenzwert nicht zurücksetzt.

5. Ändern Sie die Sequenz

Zum Beispiel:

ALTER SEQUENCE invoice_seq     INCREMENT BY 2 MAXVALUE 10   NOCACHE  NOCYCLE;
Nach dem Login kopieren

Beim Ändern der Sequenz gibt es folgende Einschränkungen:

Der Startwert der Sequenz kann nicht aufgeführt werden.
  • Der Mindestwert darf nicht größer sein als der aktuelle Wert.
  • Der Maximalwert darf nicht kleiner als der aktuelle Wert sein.
  • Die geänderten Sequenzregeln wirken sich nicht auf frühere Sequenzwerte aus, sondern nur auf zukünftige Sequenzwerte.
  • Der Benutzer muss über die Berechtigung ALTER SEQUENCE verfügen.
  • 6. Sequenz löschen
DROP SEQUENCE invoice_seq;
Nach dem Login kopieren

7. Automatisch inkrementierende Sequenz erstellen

create sequence sq_recid 
minvalue 1 maxvalue 999999  increment by 1   start with 1 noCYCLE;
Nach dem Login kopieren

2. Einen Trigger erstellen

create or replace trigger  trg_test
  before  insert on test for each row
begin
  select sq_recid.nextval into :new.ID from dual;
end;

alter  trigger trg_test  enable;
Nach dem Login kopieren

3. In C# können Sie eine Sequenz auch manuell einfügen

string sql="insert into test(ID,otherCol)value (Sql_recid.nextval,***)
    retuing ID into :ID"
Nach dem Login kopieren

Empfohlenes Tutorial: „

Oracle Video Tutorial

Das obige ist der detaillierte Inhalt vonOracle-Sequenz-SEQUENCE-Analyse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So überprüfen Sie die Tabellenraumgröße von Oracle So überprüfen Sie die Tabellenraumgröße von Oracle Apr 11, 2025 pm 08:15 PM

Um die Oracle -Tablespace -Größe abzufragen, führen Sie die folgenden Schritte aus: Bestimmen Sie den Namen Tablespace, indem Sie die Abfrage ausführen: Wählen Sie Tablespace_Name aus dba_tablespaces. Abfragen Sie die Tablespace -Größe durch Ausführen der Abfrage: Summe (Bytes) als Total_Size, sum (bytes_free) als verfügbare_space, sum

So verschlüsseln Sie die Oracle -Ansicht So verschlüsseln Sie die Oracle -Ansicht Apr 11, 2025 pm 08:30 PM

Mit der Verschlüsselung von Oracle View können Sie Daten in der Ansicht verschlüsseln und so die Sicherheit sensibler Informationen verbessern. Die Schritte umfassen: 1) Erstellen des Master -Verschlüsselungsschlüssels (MEK); 2) Erstellen einer verschlüsselten Ansicht, der Ansicht und der Verschlüsselung der Ansicht und der MEK angeben; 3) Benutzern Sie die Benutzer, auf die verschlüsselte Ansicht zuzugreifen. Wie verschlüsselte Ansichten funktionieren: Wenn ein Benutzer nach einer verschlüsselten Ansicht nachgefragt wird, verwendet Oracle MEK, um Daten zu entschlüsseln und sicherzustellen, dass nur autorisierte Benutzer auf lesbare Daten zugreifen können.

So importieren Sie die Oracle -Datenbank So importieren Sie die Oracle -Datenbank Apr 11, 2025 pm 08:06 PM

Datenimportmethode: 1. Verwenden Sie das SQLLoader -Dienstprogramm: Datendateien vorbereiten, Steuerdateien erstellen und SQLLOADER ausführen. 2. Verwenden Sie das IMP/Exp -Tool: Daten exportieren, Daten importieren. Tipp: 1. Empfohlener SQL*Loader für Big -Data -Sets; 2. Die Zieltabelle sollte vorhanden und die Spaltendefinition entspricht. 3. Nach dem Import muss die Datenintegrität überprüft werden.

So sehen Sie den Instanznamen von Oracle So sehen Sie den Instanznamen von Oracle Apr 11, 2025 pm 08:18 PM

Es gibt drei Möglichkeiten, Instanznamen in Oracle anzuzeigen: Verwenden Sie den "SQLPLUS" und "Instance_name aus v $ Instance". Befehle in der Befehlszeile. Verwenden Sie den "show Instance_name;" Befehl in SQL*Plus. Überprüfen Sie die Umgebungsvariablen (Oracle_sid unter Linux) über den Task -Manager des Betriebssystems, den Oracle Enterprise Manager oder über das Betriebssystem.

Wie man die Oracle -Installation deinstalliert Wie man die Oracle -Installation deinstalliert Apr 11, 2025 pm 08:24 PM

Deinstallieren Sie die Methode für Oracle -Installationsfehler: Schließen Sie den Oracle -Service, löschen Sie Oracle -Programmdateien und Registrierungsschlüssel, Deinstallieren Sie Oracle -Umgebungsvariablen und starten Sie den Computer neu. Wenn das Deinstall fehlschlägt, können Sie das Oracle Universal Deinstall -Tool manuell deinstallieren.

Wie man Zeit in Oracle bekommt Wie man Zeit in Oracle bekommt Apr 11, 2025 pm 08:09 PM

Es gibt die folgenden Methoden, um Zeit in Oracle zu bekommen: current_timestamp: Gibt die aktuelle Systemzeit genau auf Sekunden zurück. SYSTIMESTAMP: genauer als Current_Timestamp, für Nanosekunden. SYSDATE: Gibt das aktuelle Systemdatum mit Ausnahme des Zeitteils zurück. To_char (sysdate, 'yyy-mm-dd hh24: mi: ss'): konvertiert das aktuelle Systemdatum und die Uhrzeit in ein bestimmtes Format. Extrakt: Extrahiert einen bestimmten Teil aus einem Zeitwert wie einem Jahr, Monat oder Stunde.

So erstellen Sie Oracle Dynamic SQL So erstellen Sie Oracle Dynamic SQL Apr 12, 2025 am 06:06 AM

SQL -Anweisungen können basierend auf der Laufzeiteingabe erstellt und ausgeführt werden, indem die dynamische SQL von Oracle verwendet wird. Zu den Schritten gehören: Vorbereitung einer leeren Zeichenfolgenvariable zum Speichern von dynamisch generierten SQL -Anweisungen. Verwenden Sie die sofortige Ausführung oder Vorbereitung, um dynamische SQL -Anweisungen zu kompilieren und auszuführen. Verwenden Sie die Bind -Variable, um die Benutzereingabe oder andere dynamische Werte an dynamische SQL zu übergeben. Verwenden Sie sofortige Ausführung oder führen Sie aus, um dynamische SQL -Anweisungen auszuführen.

So lesen Sie den Oracle AWR -Bericht So lesen Sie den Oracle AWR -Bericht Apr 11, 2025 pm 09:45 PM

Ein AWR -Bericht ist ein Bericht, in dem die Datenbankleistung und Aktivitätsschnappschüsse angezeigt werden. Zu den Interpretationsschritten gehören: Identifizierung des Datums und der Uhrzeit des Aktivitäts -Snapshots. Sehen Sie sich einen Überblick über Aktivitäten und Ressourcenverbrauch an. Analysieren Sie Sitzungsaktivitäten, um Sitzungsarten, Ressourcenverbrauch und Warteeignisse zu finden. Finden Sie potenzielle Leistungsengpässe wie langsame SQL -Aussagen, Ressourcenbeständigkeit und I/A -Probleme. Wartenereignisse anzeigen, identifizieren und beheben Sie sie für die Leistung. Analysieren Sie die Muster für Latch- und Speichernutzung, um Speicherprobleme zu identifizieren, die Leistungsprobleme verursachen.

See all articles