CSV to SQL Converter
Data ConvertersConvert CSV data into CREATE TABLE and INSERT INTO statements with smart type inference. PostgreSQL, MySQL/MariaDB and SQLite dialects — copy ready-to-run SQL.
Paste CSV (or load the sample) — CREATE TABLE and batched INSERT statements appear instantly.
CSV to Excel Converter
Convert CSV files to real .xlsx Excel workbooks instantly. Live spreadsheet preview, auto-sized columns, one-click download — 100% private and free.
CSV to PDF Converter
Turn any CSV into a clean, styled PDF table in seconds. Choose portrait or landscape orientation with repeated headers on every page — runs 100% in your browser.
JSON to CSV Converter
Convert JSON arrays or objects to CSV instantly. Nested objects are flattened into dot notation, arrays kept as clean JSON cells, with live preview and one-click .csv download.
CSV to QBO Converter
Convert bank CSV exports to QuickBooks Web Connect (.qbo) files. Map date, payee and amount columns, set account details and import transactions in seconds — 100% local.
How to Use
Three steps from raw data to finished output — no account required.
- 1
Paste your CSV or upload a .csv file — the first row is used as column names.
- 2
Choose your SQL dialect (PostgreSQL, MySQL/MariaDB or SQLite) and set the table name.
- 3
Copy the generated CREATE TABLE and batched INSERT statements, or download the .sql file.
Frequently Asked Questions
Everything you need to know about the csv to sql converter.
Every column is scanned and typed automatically: all-integer columns become BIGINT/INT, decimal numbers become DOUBLE/REAL, true/false values become BOOLEAN, ISO dates become DATE and date-times become TIMESTAMP — anything else becomes TEXT.
PostgreSQL uses double-quoted identifiers and native BOOLEAN/DOUBLE PRECISION types; MySQL/MariaDB uses backtick identifiers and DATETIME; SQLite is schemaless, so types are advisory. String escaping follows each engine's rules so quotes and backslashes never break your statements.
Single quotes are doubled per the SQL standard, backslashes are escaped for MySQL, and empty cells become NULL. Values that look numeric or boolean are emitted unquoted so column types stay correct.
Yes. INSERT statements are batched into multi-row VALUES chunks (100 rows by default), which imports far faster than one statement per row. The generated .sql file streams locally, so even large exports never hit a server limit.