DROP CONSTRAINT maddesi

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

İlişkiden bir PRIMARY KEY, FOREIGN KEY, UNIQUEveya CHECK kısıtlaması bırakır.

Sözdizimi

DROP { PRIMARY KEY [ IF EXISTS ] [ RESTRICT | CASCADE ] |
       FOREIGN KEY [ IF EXISTS ] ( column [, ...] ) |
       CONSTRAINT [ IF EXISTS ] name [ RESTRICT | CASCADE ] }

Parametreler

  • PRIMARY KEY [EĞER VARSA]

    Şunlar için geçerlidir:onay işareti evet Databricks SQL onay işareti evet olarak işaretlendi Databricks Runtime 11.3 LTS ve üzeri onay işareti yalnızca Unity Kataloğu evet olarak işaretlendi

    İlişkiden birincil anahtarı kaldırır.

  • YABANCı ANAHTAR [ VARSA ] ( sütun [, ...] )

    Şunlar için geçerlidir:onay işareti evet Databricks SQL onay işareti evet olarak işaretlendi Databricks Runtime 11.3 LTS ve üzeri onay işareti yalnızca Unity Kataloğu evet olarak işaretlendi

    Sıralı sütun listesi ile tanımlı yabancı anahtarı kaldırır.

  • CONSTRAINT [ VARSA ] isim

    Adla tanımlanan birincil anahtarı, yabancı anahtarı, benzersiz veya denetim kısıtlamasını bırakır. Denetim ve benzersiz kısıtlamalar ada göre bırakılmalıdır.

  • RESTRICT veya CASCADE

    belirttiğinizde RESTRICTve birincil anahtara veya benzersiz kısıtlamaya herhangi bir yabancı anahtar başvurduğunda, deyimi başarısız olur. belirttiğinizde CASCADE, birincil anahtarın veya benzersiz kısıtlamanın bırakılması, ilişkiye başvuran yabancı anahtarların düşmesine neden olur. Varsayılan değer: RESTRICT.

  • VAR OLUP OLMADIĞINI KONTROL ET

    Belirttiğinizde IF EXISTS, ilişkide eşleşen bir kısıtlama yoksa ifade yoksayılır.

Örnekler

> 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;