Vai al contenuto
SPCX Tools

Da CSV a SQL

Converti istantaneamente i dati CSV in istruzioni SQL CREATE TABLE e INSERT.

Funziona localmente: i file non lasciano mai il tuo dispositivo

Caricamento strumento…

Come usare Da CSV a SQL

  1. 1Incolla i tuoi dati CSV nel riquadro di input, oppure clicca su Esempio per vedere come funziona la formattazione.
  2. 2Inserisci il nome della tabella di destinazione e seleziona il dialetto del database preferito (MySQL, PostgreSQL, SQLite o SQL Server).
  3. 3Attiva le opzioni per includere l'istruzione CREATE TABLE, raggruppare gli INSERT o trattare le celle vuote come NULL.
  4. 4Copia l'SQL generato o scaricalo direttamente come file .sql.

Un convertitore da CSV a SQL veloce e privato

Trasformare i dati di un foglio di calcolo nel formato di un database relazionale è un'attività comune per sviluppatori, amministratori di database e analisti di dati. Questo strumento ti permette di convertire CSV in SQL direttamente nel tuo browser. Che tu debba popolare un nuovo database, migrare dati legacy o importare rapidamente un dataset, puoi generare istruzioni INSERT a partire da dati CSV in pochi secondi.

Poiché l'intero processo di conversione viene eseguito localmente sul tuo dispositivo, i tuoi dati non vengono mai caricati su un server esterno. Ciò garantisce privacy e sicurezza totali, consentendoti di elaborare in modo sicuro dati riservati degli utenti, record finanziari o informazioni proprietarie senza rischi di esposizione.

Come funziona l'inferenza automatica dei tipi

Scrivere manualmente uno schema per un dataset con decine di colonne è un'operazione lunga. Per farti risparmiare tempo, questo strumento legge automaticamente i tuoi dati CSV e deduce il tipo di dato SQL più appropriato per ogni colonna. Analizza i valori effettivi nelle righe (ignorando le celle vuote) e applica le seguenti regole:

  • INTEGER: Assegnato se ogni valore nella colonna è un numero intero (es. 42, -15).
  • DECIMAL: Assegnato se i valori sono numeri in virgola mobile o usano la notazione scientifica (es. 3.14, -0.5).
  • BOOLEAN: Assegnato se la colonna contiene solo true o false (senza distinzione tra maiuscole e minuscole).
  • DATE: Assegnato se i valori corrispondono al formato data ISO standard (YYYY-MM-DD).
  • TEXT / VARCHAR: Il tipo di fallback se una colonna contiene dati misti, testo semplice o formati che non rispettano i rigidi schemi precedenti.

Se scegli di generare un'istruzione CREATE TABLE, questi tipi dedotti vengono mappati automaticamente alla sintassi corretta per il dialetto del database scelto.

Dialetti SQL supportati

I vari motori di database hanno regole specifiche per delimitare gli identificatori (come i nomi di tabelle e colonne), definire i tipi di dati e formattare i valori letterali. Questo strumento supporta quattro dialetti principali per assicurare che il codice SQL generato funzioni senza errori di sintassi:

MySQL: Quando converti CSV in MySQL, lo strumento racchiude i nomi di tabelle e colonne tra backtick (`). Le colonne di testo usano di default VARCHAR(255) e i valori booleani vengono scritti come TRUE o FALSE.

PostgreSQL: Gli identificatori sono racchiusi tra virgolette doppie ("). Le colonne di testo usano il tipo TEXT, che è standard e altamente efficiente in Postgres. I valori booleani sono supportati nativamente come TRUE o FALSE.

SQLite: Gli identificatori usano le virgolette doppie. Poiché SQLite utilizza una tipizzazione dinamica con un set limitato di classi di archiviazione, i decimali vengono mappati su REAL, i booleani su INTEGER (restituendo 1 o 0) e il testo usa l'affinità TEXT.

SQL Server (T-SQL): Gli identificatori sono racchiusi tra parentesi quadre ([]). Le colonne di testo usano di default VARCHAR(255) e i booleani vengono mappati sul tipo di dato BIT (restituendo 1 o 0). Inoltre, se una stringa di testo contiene caratteri non ASCII, lo strumento aggiunge automaticamente il prefisso N (es. N'Value') per garantire un corretto inserimento Unicode (NVARCHAR).

Personalizza l'output SQL

Puoi adattare lo script SQL generato alle tue specifiche esigenze di deployment usando le opzioni di configurazione:

  • Nome tabella: Definisci il nome esatto della tabella di destinazione. Lo strumento applicherà automaticamente le virgolette corrette per il tuo dialetto.
  • Includi CREATE TABLE: Se stai creando un database da zero, attiva questa opzione per generare la definizione dello schema prima delle istruzioni di inserimento. Lo strumento usa le intestazioni del tuo CSV come nomi delle colonne.
  • Inserimenti in batch: Eseguire migliaia di singole istruzioni INSERT INTO può essere lento. Attivando l'opzione batch, puoi raggruppare fino a 500 righe in un'unica istruzione di inserimento da CSV a SQL. Questo riduce drasticamente le dimensioni del file e migliora le prestazioni di importazione.
  • Celle vuote come NULL: I fogli di calcolo contengono spesso celle vuote. Attivando questa opzione, le stringhe vuote nel tuo CSV verranno scritte esplicitamente con la parola chiave NULL in SQL, anziché inserire stringhe vuote ('') nel database.

Consigli per preparare i dati CSV

Per risultati ottimali, assicurati che il file CSV abbia una riga di intestazione. Lo strumento utilizza la prima riga dei dati per nominare le colonne nelle istruzioni CREATE TABLE e INSERT. Se l'intestazione di una colonna è vuota, verrà nominata automaticamente column_1, column_2, ecc.

Se i dati contengono testo complesso con virgole, ritorni a capo o virgolette, assicurati che il CSV sia formattato correttamente (di solito racchiudendo il campo tra doppie virgolette). Lo strumento include un robusto parser CSV che gestisce correttamente le virgolette con escape e i campi su più righe.

Se hai bisogno di elaborare i dati in altri formati, potrebbero esserti utili anche i nostri convertitori da CSV a JSON o da CSV a Excel. Una volta generato l'SQL, puoi usare un formattatore SQL se hai bisogno di sistemare l'indentazione o le maiuscole/minuscole delle parole chiave.

Domande frequenti

In che modo lo strumento deduce i tipi di dati SQL?
Il convertitore analizza i dati di ogni colonna (ignorando le celle vuote). Se tutti i valori corrispondono a un pattern specifico, assegna il tipo relativo: INTEGER per i numeri interi, DECIMAL per i numeri con virgola mobile, BOOLEAN per i valori vero/falso e DATE per i formati YYYY-MM-DD. Se i dati sono misti o non corrispondono a questi pattern, imposta di default TEXT o VARCHAR.
I miei dati CSV vengono caricati su un server?
No. Tutto il parsing e la generazione del codice SQL avvengono localmente nel tuo browser tramite JavaScript. I dati non lasciano mai il tuo dispositivo, rendendo questo strumento completamente sicuro per i record di database sensibili, riservati o proprietari.
Cosa fa l'opzione "Batch"?
Se abilitata, lo strumento raggruppa fino a 500 righe di dati in un'unica istruzione INSERT multi-riga. Questo riduce notevolmente le dimensioni del file SQL generato e velocizza i tempi di esecuzione quando esegui lo script nel tuo database.
Come vengono gestite le celle vuote?
Selezionando "Vuoto come NULL", ogni cella vuota nel CSV verrà scritta con la parola chiave NULL nell'output SQL. Se deselezionata, le celle vuote vengono trattate come stringhe vuote ('') per le colonne di testo, oppure lasciate come NULL per le colonne numeriche, dove una stringa vuota causerebbe un errore di sintassi.
Perché i tipi di dato generati cambiano quando cambio dialetto?
Sistemi di database diversi utilizzano parole chiave diverse per i tipi di colonna. Ad esempio, una colonna booleana è rappresentata come BOOLEAN in PostgreSQL, ma come BIT in SQL Server e INTEGER in SQLite. Lo strumento adatta automaticamente la sintassi CREATE TABLE e la formattazione dei dati in base al dialetto selezionato.