التابع Connection.enable_load_extension()‎ في بايثون

من موسوعة حسوب
مراجعة 20:57، 18 سبتمبر 2018 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:التابع <code>Connection.enable_load_extension()‎</code> في بايثون}}</noinclude> يحدّد هذا التابع ما إذا كا...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يحدّد هذا التابع ما إذا كان بإمكان محرّك SQLite تحميل الملحقات من المكتبات المشتركة. تعرّف ملحقات SQLite دوال أو مجاميع أو إضافة خاصية جديدة مثل الجداول الافتراضية. fulltext-search هي من الملحقات المعروفة والتي توزّع مع SQLite.

يجدر التنبيه إلى أنّ الملحقات القابلة للتحميل معطّلة بصورة افتراضية، وذلك لأنّ بعض المنصّات (وبالخصوص Mac OS X) تمتلك مكتبات SQLite مصرّفة دون تضمين هذه الميزة. لتفعيل ميزة الملحقات القابلة للتحميل يجب تمرير ‎-enable-loadable-sqlite-extensions إلى الإعدادات.

ملاحظة: هذا التابع جديد في الإصدار 3.2.

البنية العامة

enable_load_extension(enabled)

المعاملات

enabled

قيمة منطقية (بوليانية).

أمثلة

يبين المثال التالي آلية عمل التابع:

import sqlite3

con = sqlite3.connect(":memory:")

# تفعيل خاصية تحميل الملحقات
con.enable_load_extension(True)

# fulltext search تحميل الملحقة
con.execute("select load_extension('./fts3.so')")

# يمكن أيضًا تحميل الملحقة باستخدام واجهة الاستدعاء البرمجية:‏
# con.load_extension("./fts3.so")

# تعطيل ميزة تحميل الملحقات مرة أخرى
con.enable_load_extension(False)

مثال آخر من SQLite wiki:

con.execute("create virtual table recipe using fts3(name, ingredients)")
con.executescript("""
    insert into recipe (name, ingredients) values ('broccoli stew', 'broccoli peppers cheese tomatoes');
    insert into recipe (name, ingredients) values ('pumpkin stew', 'pumpkin onions garlic celery');
    insert into recipe (name, ingredients) values ('broccoli pie', 'broccoli cheese onions flour');
    insert into recipe (name, ingredients) values ('pumpkin pie', 'pumpkin sugar flour butter');
    """)
for row in con.execute("select rowid, name, ingredients from recipe where name match 'pie'"):
    print(row)

انظر أيضًا

مصادر

صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.