Integrated the TableCreationQuery into the SQLTable
This commit is contained in:
parent
52ca4879f9
commit
3883d5f3d4
@ -2,6 +2,9 @@ package de.gnmyt.sqltoolkit.storage;
|
|||||||
|
|
||||||
import de.gnmyt.sqltoolkit.drivers.MySQLConnection;
|
import de.gnmyt.sqltoolkit.drivers.MySQLConnection;
|
||||||
import de.gnmyt.sqltoolkit.manager.*;
|
import de.gnmyt.sqltoolkit.manager.*;
|
||||||
|
import de.gnmyt.sqltoolkit.queries.TableCreationQuery;
|
||||||
|
import de.gnmyt.sqltoolkit.querybuilder.QueryParameter;
|
||||||
|
import de.gnmyt.sqltoolkit.querybuilder.SQLQuery;
|
||||||
import de.gnmyt.sqltoolkit.types.SQLType;
|
import de.gnmyt.sqltoolkit.types.SQLType;
|
||||||
import de.gnmyt.sqltoolkit.types.TableField;
|
import de.gnmyt.sqltoolkit.types.TableField;
|
||||||
|
|
||||||
@ -164,27 +167,22 @@ public abstract class SQLTable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generates the table sql
|
* Creates the table
|
||||||
*
|
|
||||||
* @return the table sql
|
|
||||||
*/
|
*/
|
||||||
public String generateSQL() {
|
public void create() {
|
||||||
tableFields = new ArrayList<>();
|
tableFields = new ArrayList<>();
|
||||||
StringBuilder query = new StringBuilder();
|
|
||||||
|
|
||||||
// Add table fields
|
// Add table fields
|
||||||
integer("id", 255, false, "", "AUTO_INCREMENT");
|
integer("id", 255, false, "", "AUTO_INCREMENT");
|
||||||
tableFields();
|
tableFields();
|
||||||
|
|
||||||
// Create the query
|
SQLQuery query = connection.createQuery(TableCreationQuery.class)
|
||||||
query.append("CREATE TABLE IF NOT EXISTS ").append(tableName()).append("(");
|
.addParameter(QueryParameter.TABLE_NAME, tableName())
|
||||||
for (TableField tableField : tableFields)
|
.addParameter(QueryParameter.PRIMARY_KEY, "id")
|
||||||
query.append(tableField.generateSQLRow()).append(", ");
|
.addParameter(QueryParameter.FIELD_LIST, tableFields)
|
||||||
query.append("PRIMARY KEY (id)");
|
.build();
|
||||||
query.append(") ENGINE=InnoDB;");
|
|
||||||
|
|
||||||
// Return the query
|
connection.update(query);
|
||||||
return query.toString();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user