fixed database table creation
This commit is contained in:
@@ -18,7 +18,6 @@ public class Database {
|
||||
public static final String SALT = "salt";
|
||||
|
||||
private static final Logger LOG = LoggerFactory.getLogger(Database.class);
|
||||
private static final String VARCHAR = "VARCHAR(255)";
|
||||
private static Database singleton = null;
|
||||
private final Connection conn;
|
||||
|
||||
@@ -29,7 +28,7 @@ public class Database {
|
||||
public class Request{
|
||||
|
||||
private final String sql;
|
||||
private final HashMap<String,List<Object>> where = new HashMap<>();
|
||||
private final HashMap<String, List<Object>> where = new HashMap<>();
|
||||
private final HashMap<String,Object> values = new HashMap<>();
|
||||
|
||||
public Request(String sql) {
|
||||
@@ -132,7 +131,8 @@ public class Database {
|
||||
LOG.debug("Opening {}",url);
|
||||
dbFile.getParentFile().mkdirs();
|
||||
try {
|
||||
singleton = new Database(DriverManager.getConnection(url)).assertTables();
|
||||
singleton = new Database(DriverManager.getConnection(url));
|
||||
singleton.assertTables(); // must not be concatenated to exception above (assertTables accesses singleton)!
|
||||
} catch (SQLException sqle) {
|
||||
sqle.printStackTrace();
|
||||
}
|
||||
@@ -141,13 +141,12 @@ public class Database {
|
||||
}
|
||||
|
||||
private Database assertTables() throws SQLException {
|
||||
if (!tableExists("Users")) createUsersTable();
|
||||
if (!tableExists(User.TABLE_NAME)) User.createTable();
|
||||
if (!tableExists(MailingList.TABLE_NAME)) MailingList.createTable();
|
||||
return this;
|
||||
}
|
||||
|
||||
private void createUsersTable() throws SQLException {
|
||||
query("CREATE TABLE Users ("+EMAIL+" "+ VARCHAR +", "+SALT+" "+VARCHAR+", "+HASHED_PASS+" "+VARCHAR+", "+NAME+" "+VARCHAR+");").run();
|
||||
}
|
||||
|
||||
|
||||
private boolean tableExists(String tbName) throws SQLException {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user