When I execute the below code, I get :
"[SQLITE_BUSY] The database file is locked (database is locked)"
try {
String query = "WITH updates(ID, newvalue) AS ( SELECT TotalStock.Sl_No, TotalStock.Price * TotalStock.Preferred_Stock FROM TotalStock ) update TotalStock SET Total_Price= ( SELECT newvalue FROM updates WHERE TotalStock.Sl_No = ID )";
String query_2="select Sl_No, Item_Name, Perishable, Stock, Preferred_Stock, Total_Price from TotalStock where Stock=?";
PreparedStatement pst=connection.prepareStatement(query);
PreparedStatement pst_2=connection.prepareStatement(query_2);
pst_2.setString(1, "0");
pst.executeUpdate() ;
ResultSet rs_2 = pst_2. executeQuery() ;
table.setModel(DbUtils.resultSetToTableModel(rs_2));
}
catch (Exception e1) {
e1.printStackTrace();
}
SQLite connection :
Connection conn = null;
public static Connection dbConnector()
{
try
{
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:/Users/aditya/Downloads/EISJ/CS/IA/DATABASE/login_cred.db");
return conn;
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,e);
return null;
}
}