I have an SQLite3 databse I created in python. And by default it writes the database in Unicode.

Now I am trying to query the database in a Java Applet using SQLite JDBC. And I cannot find tables, rows etc because I think Java &/or JDBC queries in ANSI.

If I access the database in python I can print out the tables no problem & make updates BUT if I try to do the same in Java, I get no results returned from my query. Is this an encoding problem or some thing else

Does anyone know what us going wrong, why cant my java code find the tables, rows etc but my python code can?

This works

Java Code:
 import sqlite3

def blah():      
    conn = sqlite3.connect( "a.db" )
    cur = conn.cursor()
     res = cur.execute( "SELECT name FROM sqlite_master WHERE type='table'" ).fetchall()
     print res  

This returns no tables when it should return the same tables as above

Java Code:
Connection conn = DriverManager.getConnection("jdbc:sqlite:a.db"); 
Statement stat  = conn.createStatement(); 
ResultSet tables = stat.executeQuery("SELECT name FROM sqlite_master WHERE type='table'"); 

String b = "";  

while (tables.next())  {   b+= "table= " + tables.getString("name");       }