فارسی
باز کردن در Telegram

پست 🐍 آموزش جامع Python — پست ۲۳۴

13 اکتبر 2026
P
Python Coding Academy
🐍 آموزش جامع Python — پست ۲۳۴ اجرای هم‌زمان چند Query با executescript() تا اینجا بیشتر از execute() برای اجرای یک دستور SQL استفاده کردیم. اما اگر بخواهیم چند دستور SQL را پشت سر هم اجرا کنیم، می‌توانیم از executescript() استفاده کنیم. 🔹 استفاده ساده import sqlite3 connection = sqlite3.connect("app.db") connection.executescript(""" CREATE TABLE IF NOT EXISTS categories ( id INTEGER PRIMARY KEY, name TEXT NOT NULL ); INSERT INTO categories (name) VALUES ('Programming'); INSERT INTO categories (name) VALUES ('Design'); """) connection.commit() connection.close() در این مثال، چند دستور SQL در یک رشته قرار گرفته‌اند و با executescript() اجرا می‌شوند. 🔹 بررسی نتیجه بعد از اجرای دستورات می‌توانیم اطلاعات را بخوانیم: import sqlite3 with sqlite3.connect("app.db") as connection: categories = connection.execute( "SELECT id, name FROM categories" ).fetchall() print(categories) خروجی در اجرای اول، با فرض خالی بودن جدول: [(1, 'Programming'), (2, 'Design')] اگر کد درج اطلاعات را دوباره اجرا کنیم، دو ردیف دیگر اضافه می‌شوند؛ چون در مثال بالا از شرط جلوگیری از درج تکراری استفاده نکرده‌ایم. 🔹 تفاوت execute() و executescript() متد کاربرد execute() اجرای یک دستور SQL executemany() اجرای یک دستور با چند مجموعه مقدار executescript() اجرای چند دستور SQL در یک اسکریپت مثلاً برای ثبت چند کاربر با یک دستور تکرارشونده، معمولاً executemany() مناسب‌تر است؛ اما برای ساخت جدول و اجرای چند دستور متفاوت، executescript() کاربرد دارد. ⚠️ نکته مهم درباره تراکنش‌ها رفتار تراکنش در executescript() به نسخه Python و شیوه مدیریت تراکنش بستگی دارد. در حالت مدیریت تراکنش قدیمی، این متد می‌تواند تراکنش باز قبلی را پیش از اجرای اسکریپت Commit کند. اگر به اتمی بودن اجرای چند دستور نیاز داری، مرز تراکنش را صریحاً در طراحی اسکریپت مشخص کن و رفتار آن را در حالت اتصال مورد استفاده‌ات بشناس. همچنین ورودی کاربر را مستقیماً داخل رشته اسکریپت قرار نده؛ executescript() برای پارامترگذاری مقادیر مثل execute() مناسب نیست. برای مقادیر پویا از Query پارامتری استفاده کن. 🧠 خلاصه execute() → یک دستور SQL executemany() → یک دستور با چند مجموعه مقدار executescript() → چند دستور SQL متفاوت 🎯 تمرین با استفاده از executescript(): جدولی به نام courses بساز که ستون‌های id و title داشته باشد. دو درس با نام‌های Python و SQLite به آن اضافه کن. با SELECT تمام درس‌ها را بخوان و چاپ کن. پست ۲۳۴ از دوره جامع Python 🐍
2 ·

در همان حوالی فید

PPython Coding Academy🐍 آموزش جامع Python — پست ۲۳۲ کنترل شروع تراکنش با BEGIN IMMEDIATE در پست قبل با timeout آشنا شدیم. حالا می‌خواهیم روش دیگری برای مدیریت تراکنش‌ها در SQLite یادPPython Coding Academy🐍 آموزش جامع Python — پست ۲۳۳ کنترل تراکنش با SAVEPOINT در SQLite در پست‌های قبل یاد گرفتیم با COMMIT تغییرات را ثبت و با ROLLBACK تغییرات تأییدنشده را لغو کنیم
این پیام
PPython Coding Academy🐍 آموزش جامع Python — پست ۲۳۵ استفاده از sqlite3 با contextlib.closing در پست‌های قبل یاد گرفتیم اتصال دیتابیس را با close() ببندیم و از with connection: برای مPPython Coding Academy🐍 آموزش جامع Python — پست ۲۳۶ ساخت لایه دسترسی به داده با Repository Pattern در Python در پروژه‌های کوچک ممکن است تمام Queryهای SQLite را داخل یک فایل بنویسیم؛
PPython Coding AcademyPython Coding Academy@PythonCodingAcademy · کانال · فناوری
30مشترک68پست در 30 روز
فید انجمن باز کردن در Telegram

فید عمومی باز از ایندکس جست‌وجو ChatCrawler — «Google برای Telegram عمومی»؛ با خزش انجمن به‌روز می‌شود. زمان‌ها به UTC است.

فقط محتوای عمومی، API رسمی Telegram. دربارهٔ ما · پرسش‌ها · محدودیت‌های ایندکس · حذف یک صفحه · کاتالوگ · جست‌وجو · روش محاسبهٔ ما