Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:
Databricks SQL
Databricks Runtime
Elimina un PRIMARY KEYvincolo , FOREIGN KEYo CHECK dalla relazione.
Sintassi
DROP { PRIMARY KEY [ IF EXISTS ] [ RESTRICT | CASCADE ] |
FOREIGN KEY [ IF EXISTS ] ( column [, ...] ) |
CONSTRAINT [ IF EXISTS ] name [ RESTRICT | CASCADE ] }
Parametri
CHIAVE PRIMARIA [ SE ESISTE ]
Si applica a:
Databricks SQL
Databricks Runtime 11.3 LTS e versioni successive
Unity CatalogElimina la chiave primaria dalla relazione.
CHIAVE ESTERNA [ SE ESISTE ] ( colonna [, ...] )
Si applica a:
Databricks SQL
Databricks Runtime 11.3 LTS e versioni successive
Unity CatalogElimina la chiave esterna identificata dall'elenco ordinato delle colonne.
CONSTRAINT [ SE ESISTE ] nome
Elimina la chiave primaria, la chiave esterna o il vincolo CHECK identificato dal nome. i vincoli check possono essere eliminati solo in base al nome.
RESTRICT o CASCADE
Quando si specifica
RESTRICTe viene fatto riferimento alla chiave primaria da qualsiasi chiave esterna, l'istruzione ha esito negativo. Quando si specificaCASCADE, l'eliminazione della chiave primaria comporta l'eliminazione di eventuali chiavi esterne che fanno riferimento alla relazione. Il valore predefinito èRESTRICT.SE ESISTE
Quando si specifica
IF EXISTS, l'istruzione viene ignorata se la relazione non ha vincoli corrispondenti.
Esempi
> CREATE TABLE persons(first_name STRING NOT NULL, last_name STRING NOT NULL, nickname STRING);
> ALTER TABLE persons ADD CONSTRAINT persons_pk PRIMARY KEY(first_name, last_name);
> CREATE TABLE pets(name STRING, owner_first_name STRING, owner_last_name STRING);
> ALTER TABLE pets ADD CONSTRAINT pets_persons_fk FOREIGN KEY (owner_first_name, owner_last_name) REFERENCES persons;
> ALTER TABLE pets ADD CONSTRAINT pets_name_not_cute_chk CHECK (length(name) < 20);
-- Drop the check constraint by name
> ALTER TABLE pets DROP CONSTRAINT pets_name_not_cute_chk;
-- Attempt to drop the primary key of persons by name
> ALTER TABLE persons DROP CONSTRAINT persons_pk RESTRICT;
Error: A foreign key `pets_persons_fk` depends on the primary key
-- Drop the foreign key from pets by listing the columns
> ALTER TABLE pets DROP FOREIGN KEY IF EXISTS (owner_first_name, owner_last_name);
-- Drop the primary key of persons
> ALTER TABLE persons DROP PRIMARY KEY CASCADE;