SQLite non prevede i tipi DATE, DATETIME e TIMESTAMP come MySQL e in generale ogni DBMS può avere il suo set di tipi predefiniti con i propri range... Quindi, per sicurezza, andrebbe sempre dato uno sguardo alla documentazione in merito dello specifico DBMS... Di certo il compilatore Java non ti va a controllare le istruzioni sql che "incapsuli" nelle stringhe, per questo in compilazione non hai errori... Comunque tornando a SQLite dovresti scegliere un metodo che vada bene per le tue esigenze; ad esempio nelle mie applicazioni mi è sempre convenuto creare un campo di tipo INTEGER dove memorizzare il timestamp in millisecondi (Unix time) con cui fare facilmente tutte le operazioni di confronto... Se poi ti occorre mostrarlo in un formato comprensibile (ad esempio file o interfaccia grafica) scrivi 2 istruzioni utilizzando le classi Date e SimpleDateFormat.