Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:
Databricks SQL
Databricks Runtime
Elvet egy PRIMARY KEY, FOREIGN KEYvagy CHECK kényszert a kapcsolatból.
Syntaxis
DROP { PRIMARY KEY [ IF EXISTS ] [ RESTRICT | CASCADE ] |
FOREIGN KEY [ IF EXISTS ] ( column [, ...] ) |
CONSTRAINT [ IF EXISTS ] name [ RESTRICT | CASCADE ] }
Paraméterek
ELSŐDLEGES KULCS [ HA LÉTEZIK ]
A következőkre vonatkozik: Databricks SQL, Databricks Runtime 11.3 LTS és újabb, Unity-katalógus; mindezek "igen" állapotban vannak bejelölve
Az elsődleges kulcs elvetése a relációból.
IDEGEN KULCS [ HA LÉTEZIK ] ( oszlop [, ...] )
A következőkre vonatkozik: Databricks SQL, Databricks Runtime 11.3 LTS és újabb, Unity-katalógus; mindezek "igen" állapotban vannak bejelölve
A rendezett oszloplista alapján azonosított idegen kulcsot eltávolítja.
CONSTRAINT [ HA LÉTEZIK ] név
Elveti az elsődleges kulcsot, az idegen kulcsot vagy a név alapján azonosított ellenőrzési kényszert. A korlátozásokat csak név alapján lehet elvetni.
RESTRICT vagy CASCADE
Ha megadja
RESTRICT, és az elsődleges kulcsra bármely idegen kulcs hivatkozik, az utasítás meghiúsul. Ha megadjaCASCADE, az elsődleges kulcs elvetése a relációra hivatkozó idegen kulcsok elvetését eredményezi. Az alapértelmezett értékRESTRICT.HA LÉTEZIK
Ha megadja
IF EXISTS, a rendszer figyelmen kívül hagyja az utasítást, ha a kapcsolat nem rendelkezik egyező kényszerrel.
Példák
> 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;