2009-03-30 15 views
34

Qualcuno ha qualche consiglio sulle utility che possono essere utilizzate per caricare in massa i dati che sono memorizzati in file di testo delimitati in un database SQLite?Bulk carica i dati in sqlite?

Idealmente qualcosa che può essere definito come un programma stand-alone da uno script ecc

Un gruppo con cui lavoro ha un database Oracle che sta per scaricare un po 'di dati fuori a file e quindi caricare i dati in un database SQLite da utilizzare su un dispositivo mobile e sono alla ricerca del modo più semplice per implementare questo tipo di scenario.

risposta

60

Controlla il comando sqite. Import - lo fa esattamente.
È possibile impostare il separatore con il comando .separator

sqlite3 myDatabase 
create table myTable (a, b, c); 
.separator ',' 
.import myFile myTable 
+5

wow. questa è una scelta molto migliore. Cancellerò la mia risposta in vergogna ... + 1 – MikeJ

+1

volevo commentare che pensavo che il commento "in vergogna" fosse piuttosto divertente;) –

+0

+1 + Rispondi! Ho appena notato questo mentre combinavo le mie vecchie domande. Bello. –

1

Perché vuoi un file di testo?

Basta usare Java che dispone di librerie facilmente disponibili per l'accesso a Oracle e SQLite. Collegati a entrambi i database e seleziona da un db e inserisci in un altro senza complessità aggiuntiva di CSV, che non è un formato molto ben definito e ti darà problemi con codifica dei caratteri, virgolette, virgolette o punti e virgola, newline ecc. i tuoi dati.

+0

puoi scommettere. Vogliono uno perché è il percorso che stavano pensando. Ho intenzione di suggerire questo approccio (come sarebbe quello più intelligente ...) e vedere cosa ne deriva. Potrebbero non avere un ragazzo Java esperto, in quel caso, lo imparerò e lo farò. –

+2

Non c'è alcun motivo per cui debba essere Java, qualsiasi altro linguaggio che possa utilizzare sia database Oracle che SQLite può fare questo lavoro. Questo è praticamente qualsiasi lingua principale. –

+0

Poiché SQLite blocca le scritture, può essere piacevole caricare da un file. Esiste un'opzione di caricamento di massa direttamente dall'interfaccia Java (o altre lingue principali?) Senza scrivere in un file? – qwerty9967