عبارة DROP CONSTRAINT
ينطبق على: Databricks SQL
Databricks Runtime
إسقاط القيد PRIMARY KEY أو FOREIGN KEY أو CHECK من الجدول.
بناء الجملة
DROP { PRIMARY KEY [ IF EXISTS ] [ RESTRICT | CASCADE ] |
FOREIGN KEY [ IF EXISTS ] ( column [, ...] ) |
CONSTRAINT [ IF EXISTS ] name [ RESTRICT | CASCADE ] }
المعلمات
PRIMARY KEY [ IF EXISTS ]
ينطبق على:
Databricks SQL
Databricks Runtime 11.3 LTS وما فوق
كتالوج Unity فقط
إسقاط المفتاح الأساسي من الجدول.
FOREIGN KEY [ IF EXISTS ] ( العمود [, ...] )
ينطبق على:
Databricks SQL
Databricks Runtime 11.3 LTS وما فوق
كتالوج Unity فقط
إسقاط المفتاح الخارجي المحدد بواسطة قائمة الأعمدة مرتبة.
CONSTRAINT [ IF EXISTS ] name
إسقاط المفتاح الأساسي أو المفتاح الخارجي أو قيد التحقق المحدد بالاسم. يمكن إسقاط قيود التحقق فقط بالاسم.
تقييد أو تتالي
إذا قمت بتحديد
RESTRICT
وتم الرجوع إلى المفتاح الأساسي بواسطة أي مفتاح خارجي، فستفشل العبارة. إذا قمت بتحديدCASCADE
، يؤدي إسقاط المفتاح الأساسي إلى إسقاط أي مفاتيح خارجية تشير إلى الجدول. الافتراضي هوRESTRICT
.إذا كان موجودا
إذا قمت بتحديد
IF EXISTS
العبارة سيتم تجاهلها إذا كان الجدول لا يحتوي على قيد مطابق.
الأمثلة
> 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;
المقالات ذات الصلة
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ