DROP約束從句

預覽

此功能已在公共預覽

適用於:勾選“是”磚的SQL勾選“是”磚運行時

從表中刪除主鍵、外鍵或CHECK約束。

語法

下降主要的關鍵如果存在限製|級聯|外國關鍵如果存在((,...|約束如果存在的名字限製|級聯

參數

  • 主鍵[如果存在]

    適用於:勾選“是”磚的SQL勾選“是”Databricks運行時11.1及以上版本勾選“是”僅限Unity目錄

    從表中刪除主鍵。

  • 外鍵[IF EXISTS](列[,…])

    適用於:勾選“是”磚的SQL勾選“是”Databricks運行時11.1及以上版本勾選“是”僅限Unity目錄

    刪除由有序列列表標識的外鍵。

  • 約束[IF EXISTS] [name](sql-ref-identifier .md)

    刪除按名稱標識的主鍵、外鍵或檢查約束。檢查約束隻能按名稱刪除。

  • 限製級聯

    如果你指定限製如果主鍵被任何外鍵引用,語句將失敗。如果你指定級聯,刪除主鍵會導致刪除引用表的所有外鍵。您必須擁有定義外鍵的表。默認為限製

  • 如果存在

    如果你指定如果存在如果表沒有匹配約束,則該語句將被忽略。

例子

>創建表格(first_name字符串last_name字符串昵稱字符串);>改變表格添加約束persons_pk主要的關鍵(first_namelast_name);>創建表格寵物(的名字字符串owner_first_name字符串owner_last_name字符串);>改變表格寵物添加約束pets_persons_fk外國關鍵(owner_first_nameowner_last_name參考文獻>改變表格寵物添加約束pets_name_not_cute_chk檢查(長度(的名字<20.);——按名稱刪除檢查約束>改變表格寵物下降約束pets_name_not_cute_chk——試圖刪除人名的主鍵>改變表格下降約束persons_pk限製錯誤一個外國關鍵pets_persons_fk取決於主要的關鍵——通過列出列從pets中刪除外鍵>改變表格寵物下降外國關鍵如果存在(owner_first_nameowner_last_name);—刪除person的主鍵>改變表格下降主要的關鍵級聯