Salve a tutti,

sto facendo un semplice programmino per archiviare i film che ho sugli HD esterni, l'idea era di leggere il contenuto dell'HD, prendere i nomi dei file ed inserirli banalmente in un Database. (dalla cartella si prende solo il nome poi gli altri dati genere ecc sarebbero stati inseriti appositamente con una form)
Il problema me lo da ancora alla base, con le insert into:
in pratica con:

a = listOfFiles[i].getName();

prendo il nome uno alla volta dei file da inserire (restituisce una stringa) però dopo non so come inserire la stringa a nella insert into.
la parte del mio codice è

codice:
stat.executeUpdate("insert into film VALUES ("+(String)a+", 'politics')");
l'errore che mi da è
Exception in thread "main" java.sql.SQLException: no such column: prova.txt

che non riesco proprio a capire io voglio che prova.txt (file letto da una cartella a caso) me lo inserisca come un campo della colonna nome.
Ho provato vari incastri, senza il cast senza apici però non riesco a risolvere.
Come faccio a passargli la variabile a? in modo cosi che nel ciclo for mi inserisca una nuova riga per ogni nome letto?

p.s:
io la tabella la creo così
codice:
stat.executeUpdate("create table if not exists film " + "(nome," + "genere)");
che non so se è corretto (mi sa un pò semplicistica, senza il tipo del campo nome e genere)

grazie,
saluti
Riccardo