0Pricing
Django Academy · درس

‏sqlmigrate وفحص SQL

شاهد SQL الخام الذي ستنفّذه Migration

‏sqlmigrate وفحص SQL درس مجاني في Django Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Django Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Django Academy 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

See the Real SQL

Migrations are Python, but the database speaks SQL. The sqlmigrate command shows the exact SQL a migration will run.

How to Run It

Give sqlmigrate an app label and a migration number, and it prints the SQL without applying anything.

python manage.py sqlmigrate blog 0002

It Does Not Apply

sqlmigrate is read-only. It prints the statements so you can review them, never touching your database.

Reading CREATE TABLE

An initial migration shows a CREATE TABLE with each column, type, and constraint laid out in plain SQL.

CREATE TABLE "blog_post" (
  "id" integer PRIMARY KEY AUTOINCREMENT,
  "title" varchar(200) NOT NULL
);

Reading ALTER TABLE

Adding a field shows an ALTER TABLE ... ADD COLUMN, the precise change Django will make to the existing table.

ALTER TABLE "blog_post"
  ADD COLUMN "published" bool NOT NULL DEFAULT 0;

Why Inspect First

Previewing SQL catches surprises early, like an unexpected rebuild or a costly change on a huge table.

Dialect Matters

The SQL reflects your configured database. Postgres, SQLite, and MySQL each produce slightly different statements.

Find the Number

Need the migration number? Run showmigrations first to list them, then pass the one you want to sqlmigrate.

python manage.py showmigrations blog

Backwards SQL

Add the --backwards flag to see the SQL Django would run to reverse a migration, useful before rolling back.

python manage.py sqlmigrate blog 0002 --backwards

A Learning Tool

sqlmigrate is a great way to learn how the ORM maps your models to tables, columns, indexes, and constraints.

Review Before Production

On important deploys, read the SQL for risky steps so a slow migration never locks your live tables unexpectedly.

Quick Check

What does python manage.py sqlmigrate do?

Recap

With sqlmigrate you preview the exact SQL behind any migration, forwards or backwards, so deploys hold no surprises. 🔍

الأسئلة الشائعة

هل درس «‏sqlmigrate وفحص SQL» مجاني؟

نعم — نص درس «‏sqlmigrate وفحص SQL» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Django Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Django Academy 4 دروس في المجموع.

ماذا ستتعلم في «‏sqlmigrate وفحص SQL»؟

شاهد SQL الخام الذي ستنفّذه Migration تتمرن على Django Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Django Academy؟

لا تُشترط خبرة سابقة. Django Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «‏sqlmigrate وفحص SQL»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Django Academy هذا؟

نعم. كل درس في Django Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ‏makemigrations مقابل migrate
  2. قراءة ملف Migration
  3. تغيير Model وإعادة إجراء Migration
  4. ‏sqlmigrate وفحص SQL
← العودة إلى Django Academy