Fix importing

This commit is contained in:
games647
2016-07-13 10:05:22 +02:00
parent 457bc9cf47
commit eb965d5a48

View File

@ -58,7 +58,6 @@ public class Storage {
+ "Premium BOOLEAN NOT NULL, " + "Premium BOOLEAN NOT NULL, "
+ "LastIp VARCHAR(255) NOT NULL, " + "LastIp VARCHAR(255) NOT NULL, "
+ "LastLogin TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, " + "LastLogin TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, "
// + "UNIQUE (UUID), "
//the premium shouldn't steal the cracked account by changing the name //the premium shouldn't steal the cracked account by changing the name
+ "UNIQUE (Name) " + "UNIQUE (Name) "
+ ")"; + ")";
@ -72,10 +71,18 @@ public class Storage {
//drop the old unique uuid index //drop the old unique uuid index
try { try {
if (dataSource.getJdbcUrl().contains("sqlite")) { if (dataSource.getJdbcUrl().contains("sqlite")) {
String tempTableCreate = createDataStmt.replace(PREMIUM_TABLE, PREMIUM_TABLE + "_TEMP")
//if we already imported the table fail here
.replace("IF NOT EXISTS", "");
//create a temp table insert it there and then back //create a temp table insert it there and then back
createStmt.executeUpdate(createDataStmt.replace(PREMIUM_TABLE, PREMIUM_TABLE + "-TEMP")); createStmt.executeUpdate(tempTableCreate);
createStmt.executeUpdate("INSERT INTO " + PREMIUM_TABLE + "-2 SELECT * FROM " + PREMIUM_TABLE); createStmt.executeUpdate("INSERT INTO " + PREMIUM_TABLE + "_TEMP SELECT * FROM " + PREMIUM_TABLE);
createStmt.executeUpdate("INSERT INTO " + PREMIUM_TABLE + " SELECT * FROM " + PREMIUM_TABLE + "-TEMP");
createStmt.executeUpdate("DROP TABLE " + PREMIUM_TABLE);
createStmt.executeUpdate(createDataStmt);
//insert it back into the new table
createStmt.executeUpdate("INSERT INTO " + PREMIUM_TABLE + " SELECT * FROM " + PREMIUM_TABLE + "_TEMP");
} else { } else {
createStmt.executeUpdate("ALTER TABLE premium DROP INDEX UUID"); createStmt.executeUpdate("ALTER TABLE premium DROP INDEX UUID");
} }