الدالة sqlite3.create_function()‎ في بايثون

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

ينشئ التابع دالة معرفة من قبل المستخدم يمكن استعمالها لاحقًا ضمن جمل SQL.

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

create_function(name, num_params, func)

‎المعاملات

name

اسم الدالة المراد إنشاؤها.

num_params

عدد المعاملات التي تستقبلها الدالة (يمكن تعيين القيمة ‎-1 لهذا المعامل لتستقبل الدالة أي عدد من المعاملات).

func

كائن قابل للاستدعاء callable في بايثون، والذي سيستدعى كدالة SQL.

القيمة المعادة

يمكن للدالة أن تعيد أيّة قيمة من القيم المدعومة في SQLite وهي: bytes، str، int، float، None.

أمثلة

يبين المثال التالي طريقة استخدام الدالة:

import sqlite3
import hashlib

def md5sum(t):
    return hashlib.md5(t).hexdigest()

con = sqlite3.connect(":memory:")
con.create_function("md5", 1, md5sum)
cur = con.cursor()
cur.execute("select md5(?)", (b"foo",))
print(cur.fetchone()[0])

انظر أيضًا

مصادر

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