تبدیل CSV به SQL
خروجی صفحهگسترده را به اسکریپتی تبدیل کنید که پایگاه دادهتان بتواند اجرا کند. ردیف سرستون نام ستونها را تعیین میکند، هر سطر به یک INSERT تبدیل میشود و نقلقولگذاری طبق گویشی است که انتخاب میکنید.
مبدل داده
یا فایلهای CSV, TSV, TXT … را اینجا رها کنید ·
حداکثر 95 MB برای هر فایل· تا 20 فایل· حذف پس از 30 دقیقه
فایلها روی سرورهای ما پردازش میشوند و پس از 30 دقیقه حذف میشوند.
نویسهای که ستونها را در فایلهای CSV و متنی جدا میکند، هم برای خواندن و هم برای نوشتن. حالت خودکار آن را از ورودی تشخیص میدهد و با ویرگول مینویسد.
UTF-8 برای همه زبانها کار میکند. اگر Excel در ویندوز هنگام باز کردن CSV نویسههای اروپایی یا آسیایی را خراب نشان میدهد، UTF-8 با BOM را انتخاب کنید.
ورودی Excel، ODS و Numbers: فقط برگه اول تبدیل شود یا همه برگهها (برای هر برگه یک CSV داخل ZIP، یا برای هر برگه یک کلید JSON).
نام زبانه برگه در صفحهگسترده جدید، حداکثر 31 نویسه.
آرایهای از شیءها برای هر ردیف از نام ستونها بهعنوان کلید استفاده میکند؛ آرایهای از آرایهها فشردهتر است و سرستون را بهعنوان آرایه اول نگه میدارد.
نام عنصر بیرونی که همه ردیفها را در بر میگیرد؛ هر ردیف داخل آن به یک <row> تبدیل میشود.
در دستورهای CREATE TABLE و INSERT استفاده میشود. فقط حروف انگلیسی، ارقام و زیرخط.
نقلقولگذاری و نوع ستونها بین پایگاههای داده کمی فرق دارد؛ همان را که میخواهید در آن وارد کنید انتخاب کنید.
سلولهای تاریخ را در یک قالب بازنویسی میکند. ISO (2026-10-18) برای پایگاه داده و کد امنترین است؛ «بدون تغییر» آنها را همانطور که در منبع هستند نگه میدارد.
نحوه استفاده از این ابزار
- 1
فایل CSV را بارگذاری کنید
یک فایل CSV یا حداکثر ۲۰ فایل را اضافه کنید، هر کدام تا 95 MB. فایلهایی که با نقطهویرگول یا تب جدا شدهاند بهطور خودکار تشخیص داده میشوند.
- 2
نام جدول و گویش را تعیین کنید
در بخش تنظیمات پیشرفته، نام جدول SQL را وارد کنید و گویش SQL را انتخاب کنید: MySQL، PostgreSQL، SQLite یا SQL Server. گزینهٔ تاریخها روی ISO تنظیم شده است تا مقدارهای تاریخ بدون حدسزدن بارگذاری شوند.
- 3
تبدیل و اجرا کنید
روی تبدیل به SQL بزنید، خط CREATE TABLE را بخوانید، سپس اسکریپت را در کلاینت پایگاهداده یا صفحهٔ ایمپورت اجرا کنید.
CSV به SQL از ردیف سرستون شما یک دستور CREATE TABLE و برای هر ردیف داده یک INSERT مینویسد، با گیومهگذاری مناسب MySQL، PostgreSQL، SQLite یا SQL Server، تا صفحهگسترده با اجرای یک اسکریپت وارد پایگاهداده شود.
چرا CSV را به دستورهای INSERT در SQL تبدیل کنیم
هر پایگاهداده یک بارگذار سریع CSV دارد و هر کدام یک مشکل. LOAD DATA LOCAL INFILE از MySQL 8.0 به بعد بهطور پیشفرض روی سرور غیرفعال است، COPY FROM از یک فایل در PostgreSQL به دسترسی superuser یا عضویت در یک نقش ویژه نیاز دارد و BULK INSERT در SQL Server مسیرها را روی ماشین سرور میخواند، نه لپتاپ شما. پایگاهدادههای میزبانیشده اغلب فقط یک ویرایشگر پرسوجو در اختیار میگذارند.
اسکریپت INSERT همهٔ این مشکلات را دور میزند. متن است، پس میتوانید آن را بخوانید، بهعنوان دادههای اولیه در کنترل نسخه ثبت کنید و در هر کلاینتی اجرا کنید. بهایش سرعت است: دهها هزار ردیف بهخوبی بارگذاری میشود، اما میلیونها ردیف جایشان در بارگذار حجیم بومی است. توسعهدهندگانی که دادههای مرجع را در یک workbook نگه میدارند میتوانند مرحلهٔ CSV را با Excel به SQL کنار بگذارند.
نمونهٔ تبدیل CSV به SQL برای MySQL
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 در خروجی
شناسهها داخل بکتیک قرار میگیرند، مثل order date، که اجازه میدهد کلمات رزروشدهای مثل order هم نام ستون باشند.
- با MariaDB هم سازگار است
- پیشفرض خوب برای ایمپورت در phpMyAdmin
شناسهها از گیومهٔ دوتایی استاندارد استفاده میکنند. نامهای داخل گیومه حروف بزرگ و کوچک را حفظ میکنند، پس "Email" و email دو ستون متفاوتاند.
- نامهای بلندتر از 63 بایت کوتاه میشوند
باز هم گیومهٔ دوتایی، با نوعدهی انعطافپذیر: ستونی که INT تعریف شده باز هم متن را میپذیرد، مگر اینکه جدول STRICT تعریف شود، گزینهای که در SQLite 3.37.0 اضافه شد.
- در شل sqlite3 یا DB Browser for SQLite اجرا میشود
شناسهها داخل کروشه میآیند، مثل [order date]. ستونهای متنی که نویسههای غیرلاتین دارند به NVARCHAR و مقدارهای N'…' نیاز دارند.
- در SSMS یا Azure Data Studio اجرا میشود
| سازمان | الزام | منبع |
|---|---|---|
| MySQL 8.0 | max_allowed_packet بهطور پیشفرض 64 MB است؛ دستوری بزرگتر از آن رد میشود | — |
| SQL Server | یک فهرست INSERT … VALUES حداکثر 1,000 عبارت مقدار ردیف میپذیرد | — |
| PostgreSQL | شناسههای بلندتر از 63 بایت بیصدا کوتاه میشوند | — |
| SQLite | یک جدول در ساخت پیشفرض حداکثر 2,000 ستون دارد | — |
پیش از اجرای اسکریپت این موارد را بررسی کنید
ابتدا خط CREATE TABLE را بخوانید. نوع ستونها از روی مقدارها حدس زده میشود و ممکن است حدس غلط باشد: کد پستی و شمارهٔ تلفن عددی به نظر میرسند اما باید متن بمانند، وگرنه 02134 صفر ابتداییاش را از دست میدهد. نوع را پیش از اجرا در اسکریپت تغییر دهید، یا جدول را خودتان بسازید و فقط بخش INSERT را اجرا کنید.
بهجای my_table، نام واقعی را در نام جدول SQL بنویسید و اگر کلاینت اجازه میدهد اسکریپت را داخل یک تراکنش اجرا کنید تا با خطای یک ردیف همهچیز برگردانده شود. مقصدهای دیگر برای همین CSV در مرکز مبدل داده هستند.
فرمتهای CSV و اسکریپت SQL
CSV
مقادیر جداشده با کاما
CSV یک قالب متن ساده برای جدولهاست که در آن هر خط یک ردیف است و ستونها با کاما از هم جدا میشوند. این قالب از روزهای نخست رایانه استفاده میشده و در RFC 4180 توضیح داده شده است، هرچند بسیاری از گونهها از نقطهویرگول یا تب و رمزگذاریهای متنی متفاوت استفاده میکنند. تقریباً هر صفحهگسترده، پایگاه داده و ابزار تحلیلی میتواند آن را وارد یا صادر کند و به همین دلیل قالب پیشفرض انتقال داده بین سیستمهاست. CSV فقط مقادیر را ذخیره میکند و فرمول، قالببندی، چند برگه یا نوع داده ندارد.
- فشردهسازی
- –
- شفافیت
- –
- انیمیشن
- –
- سال معرفی
- –
SQL
اسکریپت SQL
فایل SQL یک اسکریپت متنی ساده از دستورهای Structured Query Language مانند CREATE TABLE و INSERT است که پایگاه داده آنها را به ترتیب اجرا میکند. معمولاً برای پشتیبانگیری، مهاجرت و اشتراکگذاری دادههای نمونه از پایگاه داده به کار میرود. خود زبان استاندارد ISO است، اما MySQL، PostgreSQL، SQLite و SQL Server هر کدام گویش خود را دارند، بنابراین اسکریپتها اغلب میان سیستمها به تغییرات کوچک نیاز دارند. هر ویرایشگر متنی فایل SQL را باز میکند و برای اجرای آن به کلاینت پایگاه داده نیاز است.
- فشردهسازی
- –
- شفافیت
- –
- انیمیشن
- –
- سال معرفی
- –
وقتی یک فایل باید در پایگاهدادهای که فقط از طریق پنجرهٔ پرسوجو به آن دسترسی دارید به جدول تبدیل شود، CSV به SQL تبدیل میشود: مقداردهی اولیهٔ یک برنامهٔ جدید، بارگذاری یک فهرست مرجع یا انتقال صفحهگسترده به MySQL یا PostgreSQL بدون دسترسی به سرور.
پرسشهای رایج دربارهٔ تبدیل CSV به SQL
چرا بهجای LOAD DATA یا COPY از فایل SQL استفاده کنیم؟
بارگذارهای حجیم مثل LOAD DATA INFILE در MySQL و COPY در PostgreSQL سریعترند، اما به دسترسی به فایل روی سرور یا پرچمهای اضافی در کلاینت نیاز دارند. یک اسکریپت ساده در هر جایی که بتوانید SQL را جایگذاری کنید اجرا میشود: کنسول پایگاهدادهٔ ابری، phpMyAdmin یا یک مهاجرت (migration) بازبینیشده.
آپاستروف در نامهایی مثل O'Brien چگونه نوشته میشود؟
داخل رشتهٔ SQL، علامت نقلقول تکی با دوبار نوشتن آن escape میشود، پس مقدار بهصورت 'O''Brien' نوشته میشود. هر چهار گویش این شکل را میپذیرند و برای همین نامی که آپوستروف دارد INSERT را خراب نمیکند.
سرستونهای CSV من در جدول به چه تبدیل میشوند؟
نام ستونها، با گیومهگذاری مطابق انتظار گویش انتخابشده. سرستونهایی مثل Unit Price کار میکنند، اما نامی که فاصله دارد باید در همهٔ پرسوجوهای بعدی هم داخل گیومه بیاید؛ پس اگر میتوانید، پیش از تبدیل چنین سرستونهایی را به unit_price تغییر دهید.
آیا میتوانم فایل SQL را از طریق phpMyAdmin وارد کنم؟
بله، در تب Import. سقف آنجا upload_max_filesize در PHP است که در php.ini پیشفرض 2 MB است؛ بسیاری از هاستها آن را بالا میبرند و صفحه حد فعلی را نشان میدهد. اگر اسکریپت بزرگتر از این بود، CSV بزرگ را به چند فایل تقسیم کنید.
آیا راهی برای تبدیل جدول به CSV وجود دارد؟
جدول را بهصورت dump خروجی بگیرید و با SQL به CSV تبدیل کنید، یا از خروجی CSV خود کلاینت پایگاهداده استفاده کنید. هر دو ردیفهایی میدهند که صفحهگسترده دوباره بتواند باز کند.
- تبدیل اکسل به SQLشیت اکسل را به اسکریپت SQL برای MySQL، PostgreSQL، SQLite یا SQL Server تبدیل کنید. سرستونها ستون جدول و ردیفها دستور INSERT میشوند.
- تبدیل SQL به CSVدستورهای INSERT فایل .sql را به ردیفهای CSV تبدیل کنید و در Excel یا Google Sheets باز کنید. برای خروجی MySQL، phpMyAdmin، SQLite و SQL Server.
- تبدیل CSV به XLSXتبدیل CSV به فایل اکسل XLSX با حفظ صفرهای ابتدایی، شناسههای طولانی و حروف خاص. جداکنندهٔ ویرگول، نقطهویرگول و تب خودکار تشخیص داده میشود.
- تبدیل CSV به XMLسطرهای CSV را با تگ ریشهٔ دلخواه به XML معتبر تبدیل کنید. نویسههای خاص escape، جداکننده خودکار، خروجی UTF-8. تا 20 فایل همزمان.
- تبدیل CSV به Parquetتبدیل CSV به Apache Parquet با ستونهای نوعدار و فشردهسازی، آماده برای pandas، DuckDB، Spark، BigQuery یا Athena، بدون نصب Python یا Spark.
- تبدیل Parquet به CSVفایلهای Apache Parquet را آنلاین به CSV تبدیل کنید و در Excel یا Google Sheets باز کنید. بدون نیاز به Python، Spark یا DuckDB. تا 20 فایل.