CSV থেকে SQL কনভার্টার
স্প্রেডশিট এক্সপোর্টকে এমন স্ক্রিপ্টে পরিণত করুন যা আপনার ডেটাবেস সরাসরি চালাতে পারে। হেডার সারি থেকে কলামের নাম আসে, প্রতিটি লাইন একটি INSERT হয়, আর কোটিং হয় আপনার বেছে নেওয়া ডায়ালেক্ট অনুযায়ী।
ডেটা কনভার্টার
অথবা CSV, TSV, TXT … ফাইল এখানে ড্রop করুন ·
প্রতি ফাইল সর্বোচ্চ 95 MB· সর্বোচ্চ 20টি ফাইল· 30 মিনিট পরে মুছে ফেলা হয়
ফাইল আমাদের সার্ভারে প্রসেস করা হয় এবং 30 মিনিট পরে মুছে ফেলা হয়।
CSV ও টেক্সট ফাইলে কলাম আলাদা করার অক্ষর, পড়া ও লেখা দুই ক্ষেত্রেই প্রযোজ্য। স্বয়ংক্রিয় অপশন ইনপুট থেকে এটি শনাক্ত করে এবং কমা দিয়ে লেখে।
UTF-8 সব ভাষায় কাজ করে। Windows-এর Excel-এ CSV খুললে অ্যাকসেন্ট বা এশীয় অক্ষর এলোমেলো দেখালে BOM সহ UTF-8 বেছে নিন।
Excel, ODS ও Numbers ইনপুটের জন্য: শুধু প্রথম শিট, অথবা সব শিট রূপান্তর করুন (ZIP-এ প্রতি শিটে একটি CSV, বা প্রতি শিটে একটি JSON কী)।
নতুন স্প্রেডশিটে শিট ট্যাবের নাম, সর্বোচ্চ ৩১ অক্ষর।
অবজেক্টের অ্যারেতে প্রতিটি সারিতে কলামের নাম কী হিসেবে থাকে; অ্যারের অ্যারে বেশি সংক্ষিপ্ত এবং হেডার প্রথম অ্যারে হিসেবে থাকে।
সব সারিকে ঘিরে রাখা বাইরের এলিমেন্টের নাম; প্রতিটি সারি এর ভেতরে একটি <row> হয়।
CREATE TABLE ও INSERT স্টেটমেন্টে ব্যবহৃত হয়। শুধু অক্ষর, সংখ্যা ও আন্ডারস্কোর।
কোটিং ও কলামের ধরন ডাটাবেসভেদে সামান্য আলাদা; যে ডাটাবেসে ইমপোর্ট করবেন সেটি বেছে নিন।
তারিখের সেলগুলো একটি ফরম্যাটে পুনরায় লিখুন। ডাটাবেস ও কোডের জন্য ISO (2026-10-18) সবচেয়ে নিরাপদ; “যেমন আছে” রাখলে উৎসের মতোই থাকে।
এই টুল কীভাবে ব্যবহার করবেন
- 1
CSV আপলোড করুন
একটি CSV বা সর্বোচ্চ ২০টি ফাইল যোগ করুন, প্রতিটি ৯৫ 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-কে SQL INSERT স্টেটমেন্টে রূপান্তর করবেন
প্রতিটি ডেটাবেসে দ্রুত CSV লোডার আছে, আর প্রতিটিরই একটি করে ঝামেলা আছে। MySQL 8.0 থেকে সার্ভারে LOAD DATA LOCAL INFILE ডিফল্টভাবে বন্ধ, PostgreSQL-এ ফাইল থেকে COPY FROM-এর জন্য সুপারইউজার অধিকার বা বিশেষ রোলের সদস্যপদ লাগে, আর SQL Server-এর BULK INSERT সার্ভার মেশিনের পাথ পড়ে, আপনার ল্যাপটপের নয়। হোস্ট করা ডেটাবেসে অনেক সময় শুধু কোয়েরি এডিটরই মেলে।
INSERT স্ক্রিপ্ট এসব এড়িয়ে যায়। এটি টেক্সট, তাই পড়া যায়, সিড ডেটা হিসেবে ভার্সন কন্ট্রোলে কমিট করা যায় এবং যেকোনো ক্লায়েন্টে চালানো যায়। বিনিময়ে গতি কম: কয়েক হাজার সারি ঠিকঠাক লোড হয়, কিন্তু লক্ষ লক্ষ সারির জন্য নেটিভ বাল্ক লোডার দরকার। যাঁরা ওয়ার্কবুকে রেফারেন্স ডেটা রাখেন, তাঁরা Excel থেকে SQL দিয়ে CSV ধাপ বাদ দিতে পারেন।
MySQL-এর জন্য CSV থেকে SQL উদাহরণ
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 দুটি আলাদা কলাম।
- ৬৩ বাইটের বেশি লম্বা নাম ছেঁটে ফেলা হয়
এখানেও ডবল কোট, আর টাইপিং নমনীয়: 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-এর ডিফল্ট ৬৪ MB; এর চেয়ে বড় একক স্টেটমেন্ট প্রত্যাখ্যাত হয় | — |
| SQL Server | একটি INSERT … VALUES তালিকায় সর্বোচ্চ ১,০০০টি সারির মান-এক্সপ্রেশন চলে | — |
| PostgreSQL | ৬৩ বাইটের বেশি লম্বা আইডেন্টিফায়ার নীরবে ছেঁটে ফেলা হয় | — |
| SQLite | ডিফল্ট বিল্ডে একটি টেবিলে সর্বোচ্চ ২,০০০টি কলাম থাকতে পারে | — |
স্ক্রিপ্ট চালানোর আগে এগুলো যাচাই করুন
আগে CREATE TABLE লাইনটি পড়ুন। কলামের টাইপ মান দেখে আন্দাজ করা হয়, আর আন্দাজ ভুল হতে পারে: ZIP কোড ও ফোন নম্বর সংখ্যার মতো দেখালেও টেক্সট থাকা দরকার, নইলে 02134 তার শুরুর শূন্য হারায়। চালানোর আগে স্ক্রিপ্টে টাইপ বদলে নিন, অথবা টেবিল নিজে তৈরি করে শুধু INSERT অংশ চালান।
my_table-এর বদলে আসল নামটি SQL টেবিলের নাম-এ লিখুন, আর ক্লায়েন্টে সম্ভব হলে স্ক্রিপ্টটি ট্রান্সজ্যাকশনের ভেতরে চালান, যাতে একটি সারি ভুল হলে সবকিছু রোলব্যাক হয়। একই CSV-র অন্য গন্তব্যগুলো ডেটা কনভার্টার হাবে আছে।
CSV ও SQL স্ক্রিপ্ট ফরম্যাট
CSV
কমা-বিভক্ত মান (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 ফাইল কেন ব্যবহার করবেন?
MySQL-এর LOAD DATA INFILE ও PostgreSQL-এর COPY-এর মতো বাল্ক লোডার দ্রুত, কিন্তু সার্ভারে ফাইল অ্যাক্সেস বা ক্লায়েন্টের বাড়তি ফ্ল্যাগ লাগে। সাধারণ স্ক্রিপ্ট যেখানেই SQL পেস্ট করা যায় সেখানে চলে: ক্লাউড ডেটাবেস কনসোল, phpMyAdmin বা পর্যালোচিত মাইগ্রেশনে।
O'Brien-এর মতো নামের অ্যাপোস্ট্রফি কীভাবে লেখা হয়?
SQL স্ট্রিংয়ের ভেতরে একটি সিঙ্গেল কোট দ্বিগুণ করে এস্কেপ করা হয়, তাই মানটি 'O''Brien' হিসেবে লেখা হয়। চারটি ডায়ালেক্টই এই রূপ মানে, তাই অ্যাপস্ট্রফিযুক্ত নাম INSERT ভাঙে না।
আমার CSV হেডারগুলো টেবিলে কী হয়ে যায়?
কলামের নাম, নির্বাচিত ডায়ালেক্টের নিয়ম অনুযায়ী কোট করা। Unit Price-এর মতো হেডার কাজ করে, কিন্তু স্পেসসহ কোট করা নাম পরের প্রতিটি কোয়েরিতেও কোট করতে হয়। তাই পারলে কনভার্টের আগে এমন হেডার unit_price-এ বদলে নিন।
SQL ফাইলটি কি phpMyAdmin দিয়ে ইমপোর্ট করা যায়?
হ্যাঁ, Import ট্যাবে। সেখানে সীমা PHP-র upload_max_filesize, যা স্টক php.ini-তে ২ MB; অনেক হোস্ট এটি বাড়ায়, আর পেজে বর্তমান সীমা দেখানো হয়। স্ক্রিপ্ট এর চেয়ে বড় হলে বড় CSV কয়েকটি ফাইলে ভাগ করুন।
টেবিল থেকে আবার CSV-তে ফেরার কোনো উপায় আছে কি?
টেবিলটি ডাম্প হিসেবে এক্সপোর্ট করে SQL থেকে CSV-এ কনভার্ট করুন, অথবা আপনার ডেটাবেস ক্লায়েন্টের নিজস্ব CSV এক্সপোর্ট ব্যবহার করুন। দুটিতেই এমন সারি পাবেন যা স্প্রেডশিটে আবার খোলা যায়।
- Excel থেকে SQL কনভার্টারExcel শিটকে MySQL, PostgreSQL, SQLite বা SQL Server-এর SQL স্ক্রিপ্টে রূপান্তর করুন। হেডার হবে কলাম, প্রতিটি সারি হবে INSERT স্টেটমেন্ট।
- SQL থেকে CSV কনভার্টার.sql ডাম্পের INSERT স্টেটমেন্টকে CSV সারিতে কনভার্ট করুন, Excel বা Google Sheets-এ খুলুন। MySQL, phpMyAdmin, SQLite ও SQL Server ডাম্প।
- CSV থেকে XLSX কনভার্টারCSV কে Excel XLSX ওয়ার্কবুকে কনভার্ট করুন, শুরুর শূন্য, লম্বা ID ও বিশেষ অক্ষরের লেখা অক্ষত থাকবে। কমা, সেমিকোলন ও ট্যাব ফাইল অটো শনাক্ত হয়।
- CSV থেকে XML কনভার্টারCSV-এর সারিগুলো নিজের রুট ট্যাগসহ সঠিক XML-এ কনভার্ট করুন। বিশেষ অক্ষর এস্কেপ, ডিলিমিটার নিজে শনাক্ত, 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 লাগবে না। ২০টি পর্যন্ত ফাইল।