التابع Cursor.execute()
في بايثون
ينفّذ التابع جملة SQL المعطاة.
البنية العامة
execute(sql[, parameters])
المعاملات
sql
سلسلة نصية تتضمن جملة SQL المراد تنفيذها. يمكن استخدام جمل تتضمن معاملات (أي استخدام محتوى نائب placeholder عوضًا عن الحروف). تدعم وحدة sqlite3
نوعين من المحتويات النائبة، هما: علامة الاستفهام (نمط qmark) ومحتوى نائب مسمّى (نمط التسمية).
ينفّذ تابع execute()
جملة SQL واحدة، ويطلق التابع تحذيرًا في حال استخدام أكثر من جملة واحدة. يمكن استخدام التابع executescript()
لتنفيذ جمل متعددة في استدعاء واحد.
أمثلة
يبين المثال التالي طريقة استخدام التابع، ويوضح كذلك طريقة استخدام نوعي المحتويات النائبة:
import sqlite3
con = sqlite3.connect(":memory:")
cur = con.cursor()
cur.execute("create table people (name_last, age)")
who = "Yeltsin"
age = 72
# نمط علامة الاستفهام
cur.execute("insert into people values (?, ?)", (who, age))
# نمط التسمية:
cur.execute("select * from people where name_last=:who and age=:age", {"who": who, "age": age})
print(cur.fetchone())
انظر أيضًا
- التابع
Connection.executemany()
:ينفّذ التابع أمر SQL على جميع تسلسلات المعاملات parameter sequences أو الروابط mappings الموجودة في تسلسل المعاملات المعطى. - التابع
Connection.executescript()
:هذا التابع من التوابع غير المعيارية والذي يسهل عملية تنفيذ جمل SQL متعددة دفعة واحدة.
مصادر
صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.