DROP INDEX
DROP INDEX â ÑдалиÑÑ Ð¸Ð½Ð´ÐµÐºÑ
СинÑакÑиÑ
DROP INDEX [ CONCURRENTLY ] [ IF EXISTS ] Ð¸Ð¼Ñ [, ...] [ CASCADE | RESTRICT ]ÐпиÑание
DROP INDEX ÑдалÑÐµÑ ÑÑÑеÑÑвÑÑÑий Ð¸Ð½Ð´ÐµÐºÑ Ð¸Ð· Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ
. ÐÑполниÑÑ ÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¼Ð¾Ð¶ÐµÑ ÑолÑко Ð²Ð»Ð°Ð´ÐµÐ»ÐµÑ Ð¸Ð½Ð´ÐµÐºÑа.
ÐаÑамеÑÑÑ
CONCURRENTLYС ÑÑим Ñказанием Ð¸Ð½Ð´ÐµÐºÑ ÑдалÑеÑÑÑ, не блокиÑÑÑ Ð¾Ð´Ð½Ð¾Ð²ÑеменнÑе опеÑаÑии вÑбоÑки, добавлениÑ, Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ Ð² ÑаблиÑе индекÑа. ÐбÑÑнÑй опеÑаÑоÑ
DROP INDEXзапÑаÑÐ¸Ð²Ð°ÐµÑ Ð±Ð»Ð¾ÐºÐ¸ÑовкÑACCESS EXCLUSIVEÐ´Ð»Ñ ÑаблиÑÑ, не допÑÑÐºÐ°Ñ Ð´ÑÑгие обÑаÑÐµÐ½Ð¸Ñ Ðº ней до завеÑÑÐµÐ½Ð¸Ñ ÑдалениÑ. ÐÑли же добавлено ÑÑо Ñказание, команда, напÑоÑив, бÑÐ´ÐµÑ Ð¶Ð´Ð°ÑÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑликÑÑÑÑÐ¸Ñ ÑÑанзакÑий.ÐÑименÑÑ ÑÑо Ñказание, надо ÑÑиÑÑваÑÑ Ð½ÐµÑколÑко оÑобенноÑÑей. Ð ÑаÑÑноÑÑи, пÑи ÑÑом можно задаÑÑ Ð¸Ð¼Ñ ÑолÑко одного индекÑа, а паÑамеÑÑ
CASCADEне поддеÑживаеÑÑÑ. (Таким обÑазом, индекÑ, поддеÑживаÑÑий огÑаниÑениеUNIQUEилиPRIMARY KEY, Ñак ÑдалиÑÑ Ð½ÐµÐ»ÑзÑ.) ÐÑоме Ñого, обÑÑнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´ÑDROP INDEXможно вÑполниÑÑ Ð² блоке ÑÑанзакÑии, аDROP INDEX CONCURRENTLYâ неÑ.ÐÐ»Ñ Ð²ÑеменнÑÑ ÑаблиÑ
DROP INDEXвÑегда вÑполнÑеÑÑÑ Ð±Ð¾Ð»ÐµÐµ пÑоÑÑÑм, неблокиÑÑÑÑим ÑпоÑобом, Ñак как они не могÑÑ Ð¸ÑполÑзоваÑÑÑÑ Ð½Ð¸ÐºÐ°ÐºÐ¸Ð¼Ð¸ дÑÑгими ÑеанÑами.IF EXISTSÐе ÑÑиÑаÑÑ Ð¾Ñибкой, еÑли Ð¸Ð½Ð´ÐµÐºÑ Ð½Ðµ ÑÑÑеÑÑвÑеÑ. Ð ÑÑом ÑлÑÑае бÑÐ´ÐµÑ Ð²Ñдано замеÑание.
имÑÐÐ¼Ñ (возможно, дополненное ÑÑ ÐµÐ¼Ð¾Ð¹) индекÑа, подлежаÑего ÑдалениÑ.
CASCADEÐвÑомаÑиÑеÑки ÑдалÑÑÑ Ð¾Ð±ÑекÑÑ, завиÑÑÑие Ð¾Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ индекÑа, и, в ÑÐ²Ð¾Ñ Ð¾ÑеÑедÑ, вÑе завиÑÑÑие Ð¾Ñ Ð½Ð¸Ñ Ð¾Ð±ÑекÑÑ (Ñм. Раздел 5.13).
RESTRICTÐÑказаÑÑ Ð² Ñдалении индекÑа, еÑли Ð¾Ñ Ð½ÐµÐ³Ð¾ завиÑÑÑ ÐºÐ°ÐºÐ¸Ðµ-либо обÑекÑÑ. ÐÑо поведение по ÑмолÑаниÑ.
ÐÑимеÑÑ
ÐÑа команда ÑÐ´Ð°Ð»Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑ title_idx:
DROP INDEX title_idx;
СовмеÑÑимоÑÑÑ
DROP INDEX ÑвлÑеÑÑÑ ÑзÑковÑм ÑаÑÑиÑением Postgres Pro. СÑедÑÑва обеÑпеÑÐµÐ½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑов в ÑÑандаÑÑе SQL не опиÑанÑ.