Aracılığıyla paylaş


DROP TABLE

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

Tablo bir EXTERNAL tablosu değilse, tabloyu siler ve tabloyla ilişkili dizini dosya sisteminden kaldırır. Tablo yoksa bir istisna atılır. Tabloyu bırakmak için tabloda MANAGE ayrıcalığına sahip olmanız, tablo sahibi olmanız veya tablonun bulunduğu şema, katalog veya meta veri deposunun sahibi olmanız gerekir.

Dış tablo söz konusu olduğunda, meta veri deposu şemasından yalnızca ilişkili meta veri bilgileri kaldırılır.

Tabloya başvuran yabancı anahtar kısıtlamaları da kaldırılır.

Tablo önbelleğe alınırsa, komutu tabloyu ve tüm bağımlılarını kaldırır.

Not veya Dikkat

Tablolar 7-30 gün içinde silinir. Unity Kataloğu, bırakılan yönetilen tabloları 7 gün boyunca kurtarmak için UNDROP TABLE komutunu destekler. 7 gün sonra, alt veriler standart tablo bakım işlemleri sırasında bulut kiracınızdan silinmek üzere işaretlenir.

Sözdizimi

DROP TABLE [ IF EXISTS ] table_name [ FORCE ]
DROP {TEMP | TEMPORARY} TABLE table_name [IF EXISTS]

Parametre

  • TEMP veya GEÇİCİ

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

    Önemli

    Bu özellik Genel Önizleme aşamasındadır.

    Belirtilirse, geçici tabloyu bırakır. Oturumda bu ada sahip geçici bir tablo yoksa, komut bir TABLE_OR_VIEW_NOT_FOUND hata koşulu hatası oluşturur.

    Belirtilmezse, komut yalnızca kalıcı bir tabloyu bırakır ve oturumda aynı nitelenmemiş ada sahip geçici bir tablo varsa bir hata oluşturur. Geçici bir tablo aynı adı paylaştığında kalıcı bir tabloyu bırakmak için tam adı kullanın.

  • EĞER VARSA

    Belirtilirse, tablo mevcut olmadığında TABLE_OR_VIEW_NOT_FOUND hatası oluşmaz.

  • table_name

    Bırakılacak tablonun adı. Ad bir zamansal belirtim veya seçenek belirtimi içermemelidir. Tablo bulunamazsa Azure Databricks bir TABLE_OR_VIEW_NOT_FOUND hatası oluşturur. Bulunan ilişki bir tablo değilse Azure Databricks bir WRONG_COMMAND_FOR_OBJECT_TYPE hatası oluşturur.

  • KUVVET

    Belirtilirse, bağımlı sığ kopyaları olsa bile tablo bırakılabilir. Bu yalnızca Unity Kataloğu yönetilen tabloları için geçerlidir. Bkz . Basit bir kopya için temel tabloyu bırakma.

Örnekler

-- Assumes a table named `employeetable` exists.
> DROP TABLE employeetable;

-- Assumes a table named `employeetable` exists in the `userdb` schema
> DROP TABLE userdb.employeetable;

-- Assumes a table named `employeetable` does not exist.
-- Throws TABLE_OR_VIEW_NOT_FOUND
> DROP TABLE employeetable;
  Error: TABLE_OR_VIEW_NOT_FOUND

-- Assumes a table named `employeetable` does not exist. Try with IF EXISTS
-- this time it will not throw exception
> DROP TABLE IF EXISTS employeetable;

-- Assumes a table named `employeetable` exists and has a shallow clone.
-- Throws CANNOT_DROP_BASE_TABLE_REFERENCED_BY_SHALLOW_CLONE
> DROP TABLE employeetable;
  Error: CANNOT_DROP_BASE_TABLE_REFERENCED_BY_SHALLOW_CLONE

-- Assumes a table named `employeetable` exists and has a shallow clone.
-- Drops base table, but shallow clones referencing this base table will no longer work
> DROP TABLE employeetable FORCE;

-- Creates and drops a temporary table
> CREATE TEMPORARY TABLE scratchpad(txt STRING);
> DROP TEMPORARY TABLE scratchpad;