Heim > Datenbank > Oracle > Hauptteil

Detailliertes Beispiel für das Hinzufügen eindeutiger Einschränkungen durch Oracle

WBOY
Freigeben: 2022-04-13 21:04:14
nach vorne
5392 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über Oracle und stellt hauptsächlich die damit verbundenen Probleme beim Hinzufügen eindeutiger Einschränkungen vor. Eindeutige Einschränkungen beziehen sich auf Einschränkungen, bei denen ein Feld oder mehrere Felder in der Tabelle einen Datensatz eindeutig identifizieren können Gemeinsam hoffe ich, dass es für alle hilfreich sein wird.

Detailliertes Beispiel für das Hinzufügen eindeutiger Einschränkungen durch Oracle

Empfohlenes Tutorial: „Oracle Video Tutorial

1 Ziel

Verwenden Sie Demonstrationsbeispiele, um zu demonstrieren, wie eindeutige Einschränkungen erstellt, gelöscht, deaktiviert und verwendet werden

2 Was ist eine eindeutige Einschränkung?

Eindeutigkeitsbeschränkung bezieht sich auf die Einschränkung, dass ein Feld oder mehrere Felder in der Tabelle zusammen einen Datensatz eindeutig identifizieren können.

Union-Felder können Nullwerte enthalten.

Hinweis: In Oracle können eindeutige Einschränkungen bis zu 32 Spalten haben.

Eindeutige Einschränkungen können beim Erstellen einer Tabelle oder mit der ALTER TABLE-Anweisung erstellt werden.

3 Der Unterschied zwischen eindeutigen Einschränkungen und Primärschlüsseln

  • Primärschlüssel: Alle Spalten, aus denen der Primärschlüssel besteht, dürfen keine Nullwerte enthalten.
  • Eindeutige Einschränkung: Gehen Sie davon aus, dass die eindeutige Einschränkung aus mehreren Spalten besteht und einige der Spalten Nullwerte enthalten können.
  • Oracle erlaubt nicht das Erstellen sowohl eines Primärschlüssels als auch einer eindeutigen Einschränkung für dieselbe Spalte.

4 Definieren Sie eindeutige Einschränkungen beim Erstellen einer Tabelle

1) Syntax:

CREATE TABLE table_name
(
    column1 datatype null/not null,
    column2 datatype null/not null,
    ...
    CONSTRAINT constraint_name UNIQUE (column1, column2,...,column_n)
);
Nach dem Login kopieren

2) Demonstrationsbeispiel eindeutiger Einschränkungen basierend auf einer einzelnen Spalte:

create table tb_supplier
(
  supplier_id          number not null
 ,supplier_name        varchar2(50)
 ,contact_name         varchar2(50)
 ,CONSTRAINT tb_supplier_u1 UNIQUE (supplier_id)--创建表时创建唯一性约束
);
Nach dem Login kopieren

3) Demonstrationsbeispiel eindeutiger Einschränkungen basierend auf mehreren Spalten Beispiel:

create table tb_products
(
  product_id        number not null,
  product_name      number not null,
  product_type      varchar2(50),
  supplier_id       number,
  CONSTRAINT tb_products_u1 UNIQUE (product_id, product_name) --定义复合唯一性约束
);
Nach dem Login kopieren

5 Verwenden Sie die ALTER TABLE-Syntax, um eine eindeutige Einschränkung zu erstellen

1) Syntax

ALTER TABLE table_name
ADD CONSTRAINT constraint_name
UNIQUE (column1, column2, ... , column_n);
Nach dem Login kopieren

2) Beispielvorbereitung demonstrieren, zuerst eine Tabelle erstellen

drop table tb_supplier;
drop table tb_products;

create table tb_supplier
(
  supplier_id          number not null
 ,supplier_name        varchar2(50)
 ,contact_name         varchar2(50)
);

create table tb_products
(
  product_id        number not null,
  product_name      number not null,
  product_type      varchar2(50),
  supplier_id       number
);
Nach dem Login kopieren

3) Einzelspaltenbasierte eindeutige Einschränkung

alter table tb_supplier
add constraint  tb_supplier_u1
unique (supplier_id);
Nach dem Login kopieren

4) Eindeutige Einschränkungen basierend auf mehreren Spalten

alter table tb_products
add constraint  tb_products_u1
unique (product_id,product_name);
Nach dem Login kopieren

6 Eindeutige Einschränkungen deaktivieren

1) Syntax:

ALTER TABLE table_name
DISABLE CONSTRAINT constraint_name;
Nach dem Login kopieren

2) Demonstrationsbeispiel:

ALTER TABLE tb_supplier
DISABLE CONSTRAINT  tb_supplier_u1;
Nach dem Login kopieren

7 Einzigartige Einschränkungen verwenden

1) Syntax:

ALTER TABLE tb_supplier
ENABLE CONSTRAINT tb_supplier_u1;
Nach dem Login kopieren
Nach dem Login kopieren

2 ) Demonstrationsbeispiel:

ALTER TABLE tb_supplier
ENABLE CONSTRAINT tb_supplier_u1;
Nach dem Login kopieren
Nach dem Login kopieren

7 Eindeutige Einschränkung löschen

1) Syntax:

ALTER TABLE table_name
DROP CONSTRAINT constraint_name;
Nach dem Login kopieren

2) Demonstrationsbeispiel:

ALTER TABLE tb_supplier DROP CONSTRAINT tb_supplier_u1;
ALTER TABLE tb_products DROP CONSTRAINT tb_products_u1;
Nach dem Login kopieren

Empfohlenes Tutorial: „Oracle Tutorial

Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für das Hinzufügen eindeutiger Einschränkungen durch Oracle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage