حذف الدالة DROP FUNCTION

من موسوعة حسوب
< SQL
مراجعة 15:39، 28 يناير 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يستخدم هذا الأمر لحذف دالة (أو إجراء) أو أكثر مُعرَّفة مسبقًا عبر الأمر CREATE FUNCTION، وله البنية العامّة الآتية:

DROP {FUNCTION | PROCEDURE} [ IF EXISTS ] name [ ( [argtype [, ...] ] ) ] [, ...]  [ CASCADE | RESTRICT ]

إذ تُحذف الدالة المحدد باسم name، وتمنع IF EXISTS حدوث أي خطأ في حال عدم وجود دالة بهذا الاسم في قاعدة البيانات، ويُحدد نوع البيانات لمتغيرات الدالة ما بين قوسين لاحتمال تكرار نفس اسم الدالة بلائحة مختلفة لمتغيراتها، أما الكلمة المفتاحية CASCADE فهي للإعلام بحذف أي كائنات objects معتمدة على الدالة، وبالحالة الافتراضية فإن RESTRICT تمنع حذفها إن كان هناك اعتماد عليها من قبل كائن ما.

ويمكن الاستغناء عن لائحة المتغيرات للدالة في حال كان اسمها فريدًا.

مثال

لحذف الدالتين باسم findSqrt (مع اختلاف نوع العدد) يستخدم الأمر الآتي:

DROP FUNCTION findSqrt(INTEGER), findSqrt(BIGINTEGER);

التوافقية

SQLServer SQLite Oracle PostgreSQL MySQL
نعم لا نعم نعم نعم

إن محرك PostgreSQL لا يدعم الأمر DROP PROCEDURE ويقتصر على DROP FUNCTION.

مصادر