UltKit

تحويل CSV إلى SQL

حوّل ملفًا مُصدَّرًا من جدول بيانات إلى سكربت تنفّذه قاعدة بياناتك. يحدد صف العناوين أسماء الأعمدة، ويصبح كل سطر أمر INSERT، وتتبع علامات الاقتباس اللهجة التي تختارها.

محوّل البيانات

أو أفلت ملفات CSV, TSV, TXT … هنا ·

الحد الأقصى 95 MB لكل ملف· حتى 20 ملفًا· تُحذف بعد 30 دقيقة

الإخراج

تُعالج الملفات على خوادمنا وتُحذف بعد 30 دقيقة.

طريقة استخدام هذه الأداة

  1. 1

    ارفع ملف CSV

    أضف ملف CSV واحدًا أو حتى 20 ملفًا، بحجم أقصاه 95 MB لكل ملف. تُكتشف ملفات الفاصلة المنقوطة وعلامة التبويب تلقائيًا.

  2. 2

    حدّد الجدول واللهجة

    ضمن الإعدادات المتقدمة، اكتب اسم جدول SQL واختر لهجة SQL: MySQL أو PostgreSQL أو SQLite أو SQL Server. يكون خيار التواريخ مضبوطًا على ISO لتُحمَّل قيم التواريخ دون تخمين.

  3. 3

    حوّل ونفّذ

    اضغط التحويل إلى SQL، وراجع سطر CREATE TABLE، ثم شغّل السكربت في برنامج قاعدة البيانات أو في شاشة الاستيراد.

يكتب محول CSV إلى SQL أمر CREATE TABLE من صف العناوين وأمر INSERT لكل صف بيانات، مع اقتباس مناسب لـ MySQL أو PostgreSQL أو SQLite أو SQL Server، فيُحمَّل جدول البيانات في قاعدة البيانات بتشغيل سكربت واحد.

لماذا تحوّل ملف CSV إلى أوامر SQL INSERT

لكل قاعدة بيانات أداة سريعة لتحميل CSV، ولكل أداة منها عيب. فأمر LOAD DATA LOCAL INFILE معطّل افتراضيًا على الخادم منذ MySQL 8.0، وأمر COPY FROM لملف يتطلب صلاحيات المستخدم المتميز أو عضوية دور خاص في PostgreSQL، وأمر BULK INSERT في SQL Server يقرأ المسارات على جهاز الخادم لا على حاسوبك. وكثيرًا ما لا تتيح قواعد البيانات المستضافة سوى محرر الاستعلامات.

يتجاوز سكربت INSERT هذه القيود كلها. فهو نص يمكنك قراءته وحفظه في نظام التحكم بالإصدارات كبيانات أولية وتشغيله في أي برنامج عميل. والمقابل هو السرعة: عشرات الآلاف من الصفوف تُحمَّل دون مشكلة، أما الملايين فمكانها أداة التحميل الجماعي الأصلية. ويمكن لمن يحتفظ بالبيانات المرجعية في ملف Excel تخطي خطوة CSV عبر Excel إلى SQL.

مثال على تحويل CSV إلى SQL لـ MySQL

سكربت مُنشأ من id,name,joined مع صفين
CREATE TABLE `my_table` (
  `id` INT,
  `name` VARCHAR(255),
  `joined` DATE
);

INSERT INTO `my_table` (`id`, `name`, `joined`) VALUES
(1, 'سارة العلي', '2026-03-02'),
(2, 'Liam O''Brien', '2026-04-15');

كيف تختلف لهجات SQL الأربع في الناتج

تُوضع المعرّفات بين علامتي backtick، مثل order date، مما يتيح أيضًا استخدام كلمات محجوزة مثل order أسماءً للأعمدة.

  • يناسب MariaDB أيضًا
  • خيار افتراضي جيد لعمليات الاستيراد في phpMyAdmin
حدود قواعد البيانات التي تؤثر في السكربت المُنشأ
الجهةالمتطلبالمصدر
MySQL 8.0القيمة الافتراضية لـ max_allowed_packet هي 64 MB؛ ويُرفض أي أمر واحد أكبر منها—
SQL Serverتقبل قائمة INSERT … VALUES الواحدة 1,000 تعبير قيم صفوف كحد أقصى—
PostgreSQLتُقتطع المعرّفات التي تزيد على 63 بايت دون تنبيه—
SQLiteيحتوي الجدول على 2,000 عمود كحد أقصى في الإصدار الافتراضي—

تحقّق من هذه النقاط قبل تنفيذ السكربت

اقرأ سطر CREATE TABLE أولًا. تُخمَّن أنواع الأعمدة من القيم، وقد يكون التخمين خاطئًا: الرموز البريدية وأرقام الهواتف تبدو أرقامًا لكن يجب أن تبقى نصًا، وإلا فقد 02134 الصفر الذي في بدايته. غيّر النوع في السكربت قبل تشغيله، أو أنشئ الجدول بنفسك وشغّل جزء INSERT فقط.

اكتب الاسم الحقيقي في اسم جدول SQL بدل my_table، وشغّل السكربت داخل معاملة (transaction) إن سمح برنامجك بذلك، ليُلغى كل شيء إذا فشل صف واحد. تجد وجهات أخرى لملف CSV نفسه في مركز محول البيانات.

صيغتا CSV وسكربت SQL

CSV

قيم مفصولة بفواصل

CSV هو تنسيق نص عادي للجداول، يمثل فيه كل سطر صفًّا وتفصل الفواصل بين الأعمدة. يُستخدم منذ بدايات الحوسبة ووصفه المعيار RFC 4180، مع أن كثيرًا من صيغه تستخدم الفاصلة المنقوطة أو علامات الجدولة وترميزات نصية مختلفة. يمكن لكل جداول البيانات وقواعد البيانات وأدوات التحليل تقريبًا استيراده وتصديره، مما يجعله التنسيق الافتراضي لنقل البيانات بين الأنظمة. يخزّن CSV القيم فقط، دون صيغ حسابية أو تنسيق أو أوراق متعددة أو أنواع بيانات.

الضغط
–
الشفافية
–
الحركة
–
سنة الظهور
–
محول CSV

SQL

سكربت SQL

ملف SQL هو سكربت نصي بسيط من عبارات لغة الاستعلام الهيكلية، مثل CREATE TABLE وINSERT، تنفذها قاعدة البيانات بالترتيب. يُستخدم عادةً للنسخ الاحتياطي لقواعد البيانات وعمليات الترحيل ومشاركة بيانات نموذجية. اللغة نفسها معيار ISO، لكن لكل من MySQL وPostgreSQL وSQLite وSQL Server لهجتها الخاصة، لذلك تحتاج السكربتات غالبًا إلى تعديلات صغيرة بين الأنظمة. يستطيع أي محرر نصوص فتح ملف SQL، ويلزم عميل قاعدة بيانات لتنفيذه.

الضغط
–
الشفافية
–
الحركة
–
سنة الظهور
–
محول SQL

يُحوَّل CSV إلى SQL عندما يجب أن ينتهي الملف جدولًا في قاعدة بيانات لا تصل إليها إلا عبر نافذة استعلام: تهيئة تطبيق جديد ببيانات أولية، أو تحميل قائمة مرجعية، أو نقل جدول بيانات إلى MySQL أو PostgreSQL دون صلاحية الوصول إلى الخادم.

أسئلة حول تحويل CSV إلى SQL

لماذا أستخدم ملف SQL بدلًا من LOAD DATA أو COPY؟

أدوات التحميل الجماعي مثل LOAD DATA INFILE في MySQL وCOPY في PostgreSQL أسرع، لكنها تتطلب الوصول إلى الملفات على الخادم أو خيارات إضافية في العميل. أما السكربت العادي فيعمل في أي مكان يمكنك لصق SQL فيه: وحدة تحكم قاعدة بيانات سحابية أو phpMyAdmin أو ترحيل خاضع للمراجعة.

كيف تُكتب الفواصل العليا في أسماء مثل O'Brien؟

داخل نص SQL تُهرَّب علامة الاقتباس المفردة بمضاعفتها، فتُكتب القيمة هكذا 'O''Brien'. تقبل اللهجات الأربع هذه الصيغة، ولذلك لا يتعطل أمر INSERT عندما يحتوي الاسم على فاصلة علوية.

إلامَ تتحول عناوين أعمدة CSV في الجدول؟

أسماء الأعمدة، مع وضعها بين علامات الاقتباس بالطريقة التي تتوقعها اللهجة المختارة. تعمل عناوين مثل Unit Price، لكن الاسم المقتبس الذي يحتوي على مسافة يجب اقتباسه في كل استعلام لاحق أيضًا، لذا غيّر هذه العناوين إلى unit_price قبل التحويل إن أمكن.

هل يمكنني استيراد ملف SQL عبر phpMyAdmin؟

نعم، من تبويب الاستيراد. الحد هناك هو upload_max_filesize في PHP، وقيمته 2 MB في ملف php.ini الافتراضي؛ وترفعه استضافات كثيرة، وتعرض الصفحة الحد الحالي. قسّم ملف CSV الكبير إلى عدة ملفات إذا كان السكربت أكبر من ذلك.

هل توجد طريقة للعودة من الجدول إلى CSV؟

صدّر الجدول كملف نسخ احتياطي (dump) وحوّله باستخدام SQL إلى CSV، أو استخدم ميزة تصدير CSV في برنامج قاعدة البيانات نفسه. في الحالتين تحصل على صفوف يمكن لبرنامج جداول البيانات فتحها من جديد.