database - Im trying to insert a rows in sqlite embedded db in java. after inserting changes are visible in that program alone -
i'm trying insert rows in sqlite embedded db in java. after adding changes visible in program alone. can't see changes in sqlite manager. when try insert row in sqlite manager values inserted shown in program gets deleted. , showing row added using sqlite manager. please help..
connection class
import java.net.url; import java.sql.connection; import java.sql.drivermanager; import java.sql.preparedstatement; import java.sql.sqlexception; import java.sql.statement; public class hsqlconn { //public static void main(string[] args) { public static connection hconn = null; public static statement hstmt = null; public static preparedstatement pst = null; public static void hconnectdb(){ try{ class.forname("org.sqlite.jdbc"); classloader classloader = thread.currentthread().getcontextclassloader(); url resource = classloader.getresource("ps/psdb.sqlite"); hconn = drivermanager.getconnection("jdbc:sqlite::resource:"+resource); } catch(exception se){ //handle errors jdbc se.printstacktrace(); } } }
main class using db
private void jbutton8actionperformed(java.awt.event.actionevent evt) { // todo add handling code here: try{ hconnectdb(); string sql1 = "insert bill (billno,date,principal,principaltext,custid,duedate) values (?,?,?,?,?,?)"; pst = hconn.preparestatement(sql1); pst.setstring(1,billnofield.gettext()); pst.setstring(2,datefield1.gettext()); pst.setstring(3,principalfield.gettext()); pst.setstring(4,principatextfield.gettext()); pst.setstring(5,custidfield.gettext()); pst.setstring(6,duedatefield.gettext()); pst.executeupdate(); pst.close(); hconn.close(); joptionpane.showmessagedialog(null, "saved"); } catch(exception e){ joptionpane.showmessagedialog(null, e); } }
according documentation of sqlite-jdbc, connection url strings beginning "jdbc:sqlite::resource:" loading read-only sqlite databases:
2009 may 19th: sqlite-jdbc-3.6.14.1 released.
- this version supports "jdbc:sqlite::resource:" syntax access read-only db files contained in jar archives, or external resources specified via url, local files address etc. (see the
you need specify file in filesystem containing sqlite database. on windows, example is:
connection connection = drivermanager.getconnection("jdbc:sqlite:c:/work/mydatabase.db");
and on unix-like systems, example is:
connection connection = drivermanager.getconnection("jdbc:sqlite:/home/leo/work/mydatabase.db");
Comments
Post a Comment