io vorrei creare un'applicazione "JAR" con db incluso....
cosa mi consigli sqlite o derby?
io vorrei creare un'applicazione "JAR" con db incluso....
cosa mi consigli sqlite o derby?
LeleFT ti ha già fornito indicazioni utili. Io ne aggiungo altre spero altrettanto utili: innanzitutto di database "embeddable" cioè incorporabili all'interno della applicazione ne esistono svariati. La caratteristica principale è che non sono client-server (possono anche esserlo eventualmente come opzione aggiuntiva) ma il punto principale è che quando girano nel contesto della applicazione, di norma scrivono uno o pochi file che contengono tutto il database e in locazioni che puoi più facilmente controllare. Questo comunque ha anche svantaggi: solo un processo per volta tipicamente può accedere alla base dati.
SQLite è principalmente per C/C++ ma c'è anche il driver JDBC disponibile se cerchi in rete. Invece altri come HSQLDB oppure Apache Derby/JavaDB (JavaDB è sostanzialmente la pacchettizzazione di Derby nel JDK) sono "pure" Java, ovvero fatti interamente in Java senza codice nativo del sistema.
Se intendi passare da MySQL ad uno dei database embeddable, tieni presente che devi rivedere bene la tua base dati, le query e gli eventuali script che hai per creare la base dati.
I database embeddable sono più "piccoli" e generalmente inferiori come caratteristiche rispetto a MySQL. Possono trattare tipi di dati differenti o con nomi differenti, la sintassi per creare db/tabelle/vincoli può essere differente e possono non gestire tutti i vincoli di integrità che ad esempio DB come MySQL o Oracle sono in grado di gestire. Quindi occhio ....
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet