summaryrefslogtreecommitdiff
path: root/src/main/java/com/redstoner/misc/mysql/elements
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/redstoner/misc/mysql/elements')
-rw-r--r--src/main/java/com/redstoner/misc/mysql/elements/ConstraintOperator.java2
-rw-r--r--src/main/java/com/redstoner/misc/mysql/elements/MysqlConstraint.java2
-rw-r--r--src/main/java/com/redstoner/misc/mysql/elements/MysqlDatabase.java92
-rw-r--r--src/main/java/com/redstoner/misc/mysql/elements/MysqlField.java14
-rw-r--r--src/main/java/com/redstoner/misc/mysql/elements/MysqlResult.java4
-rw-r--r--src/main/java/com/redstoner/misc/mysql/elements/MysqlTable.java162
6 files changed, 128 insertions, 148 deletions
diff --git a/src/main/java/com/redstoner/misc/mysql/elements/ConstraintOperator.java b/src/main/java/com/redstoner/misc/mysql/elements/ConstraintOperator.java
index 45cb33c..1e8d523 100644
--- a/src/main/java/com/redstoner/misc/mysql/elements/ConstraintOperator.java
+++ b/src/main/java/com/redstoner/misc/mysql/elements/ConstraintOperator.java
@@ -2,7 +2,7 @@ package com.redstoner.misc.mysql.elements;
public enum ConstraintOperator {
LESS_THAN, GREATER_THAN, EQUAL, NOT_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN_OR_EQUAL;
-
+
public String toString() {
switch (this) {
case LESS_THAN:
diff --git a/src/main/java/com/redstoner/misc/mysql/elements/MysqlConstraint.java b/src/main/java/com/redstoner/misc/mysql/elements/MysqlConstraint.java
index d651344..8b99d12 100644
--- a/src/main/java/com/redstoner/misc/mysql/elements/MysqlConstraint.java
+++ b/src/main/java/com/redstoner/misc/mysql/elements/MysqlConstraint.java
@@ -3,7 +3,7 @@ package com.redstoner.misc.mysql.elements;
public class MysqlConstraint {
private String fieldName, value;
private ConstraintOperator operator;
-
+
public MysqlConstraint(String fieldName, ConstraintOperator operator, String value) {
this.fieldName = fieldName;
this.operator = operator;
diff --git a/src/main/java/com/redstoner/misc/mysql/elements/MysqlDatabase.java b/src/main/java/com/redstoner/misc/mysql/elements/MysqlDatabase.java
index 91c0fe4..3f1c288 100644
--- a/src/main/java/com/redstoner/misc/mysql/elements/MysqlDatabase.java
+++ b/src/main/java/com/redstoner/misc/mysql/elements/MysqlDatabase.java
@@ -1,5 +1,7 @@
package com.redstoner.misc.mysql.elements;
+import com.redstoner.misc.mysql.MysqlQueryHandler;
+
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
@@ -7,84 +9,82 @@ import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
-import com.redstoner.misc.mysql.MysqlQueryHandler;
-
public class MysqlDatabase {
private Connection connection;
-
+
public MysqlDatabase(Connection connection) {
this.connection = connection;
}
-
- public String getName() {
- try {
- return connection.getCatalog();
- } catch (SQLException e) {
- e.printStackTrace();
- return null;
- }
- }
-
+
public MysqlTable getTable(String name) {
return new MysqlTable(this, name);
}
-
+
public boolean createTable(String name, MysqlField... description) {
return MysqlQueryHandler.queryNoResult(connection, "CREATE TABLE `" + name + "` " + getDescription(description) + ";");
}
-
+
+ private String getDescription(MysqlField... description) {
+ String desc = "(";
+
+ for (int i = 0; i < description.length; i++) {
+ String nil = "";
+
+ if (description[i].canBeNull()) {
+ nil = " NOT NULL";
+ }
+
+ desc += "`" + description[i].getName() + "` " + description[i].getType().getName() + nil;
+
+ if (i < description.length - 1) {
+ desc += ",";
+ }
+ }
+
+ desc += ")";
+
+ return desc;
+ }
+
public boolean createTableIfNotExists(String name, MysqlField... description) {
return MysqlQueryHandler.queryNoResult(connection, "CREATE TABLE IF NOT EXISTS `" + name + "` " + getDescription(description) + ";");
}
-
+
public boolean dropTable(String name) {
return MysqlQueryHandler.queryNoResult(connection, "DROP TABLE `" + name + "`;");
}
-
+
public boolean drop() {
return MysqlQueryHandler.queryNoResult(connection, "DROP DATABASE `" + getName() + "`;");
}
-
+
+ public String getName() {
+ try {
+ return connection.getCatalog();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
public List<MysqlTable> getTables() {
try {
- List<MysqlTable> tables = new ArrayList<>();
- DatabaseMetaData metadata = connection.getMetaData();
- ResultSet queryResults = metadata.getTables(null, null, "%", null);
-
+ List<MysqlTable> tables = new ArrayList<>();
+ DatabaseMetaData metadata = connection.getMetaData();
+ ResultSet queryResults = metadata.getTables(null, null, "%", null);
+
while (queryResults.next()) {
tables.add(new MysqlTable(this, queryResults.getString(3)));
}
-
+
return tables;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
-
+
protected Connection getConnection() {
return connection;
}
-
- private String getDescription(MysqlField... description) {
- String desc = "(";
-
- for (int i = 0; i < description.length; i++) {
- String nil = "";
-
- if (description[i].canBeNull()) {
- nil = " NOT NULL";
- }
-
- desc += "`" + description[i].getName() + "` " + description[i].getType().getName() + nil;
-
- if (i < description.length - 1) {
- desc += ",";
- }
- }
-
- desc += ")";
-
- return desc;
- }
}
diff --git a/src/main/java/com/redstoner/misc/mysql/elements/MysqlField.java b/src/main/java/com/redstoner/misc/mysql/elements/MysqlField.java
index 61cba2e..68b6fcc 100644
--- a/src/main/java/com/redstoner/misc/mysql/elements/MysqlField.java
+++ b/src/main/java/com/redstoner/misc/mysql/elements/MysqlField.java
@@ -3,30 +3,30 @@ package com.redstoner.misc.mysql.elements;
import com.redstoner.misc.mysql.types.MysqlType;
public class MysqlField {
- private String name;
+ private String name;
private MysqlType type;
- private boolean canBeNull;
-
+ private boolean canBeNull;
+
public MysqlField(String name, MysqlType type, boolean canBeNull) {
this.name = name;
this.type = type;
this.canBeNull = canBeNull;
}
-
+
public MysqlField(String name, String type, boolean canBeNull) {
this.name = name;
this.type = MysqlType.getTypeFromString(type);
this.canBeNull = canBeNull;
}
-
+
public String getName() {
return name;
}
-
+
public MysqlType getType() {
return type;
}
-
+
public boolean canBeNull() {
return canBeNull;
}
diff --git a/src/main/java/com/redstoner/misc/mysql/elements/MysqlResult.java b/src/main/java/com/redstoner/misc/mysql/elements/MysqlResult.java
index 6db0769..1b4f246 100644
--- a/src/main/java/com/redstoner/misc/mysql/elements/MysqlResult.java
+++ b/src/main/java/com/redstoner/misc/mysql/elements/MysqlResult.java
@@ -5,11 +5,11 @@ import java.sql.SQLException;
public class MysqlResult {
private ResultSet results;
-
+
public MysqlResult(ResultSet results) {
this.results = results;
}
-
+
public Object getObject(int columnIndex, Class<?> type) throws SQLException {
return results.getObject(columnIndex, type);
}
diff --git a/src/main/java/com/redstoner/misc/mysql/elements/MysqlTable.java b/src/main/java/com/redstoner/misc/mysql/elements/MysqlTable.java
index 6656fcd..e6a7617 100644
--- a/src/main/java/com/redstoner/misc/mysql/elements/MysqlTable.java
+++ b/src/main/java/com/redstoner/misc/mysql/elements/MysqlTable.java
@@ -1,133 +1,113 @@
package com.redstoner.misc.mysql.elements;
+import com.redstoner.misc.mysql.MysqlQueryHandler;
+
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
-import com.redstoner.misc.mysql.MysqlQueryHandler;
-
-public class MysqlTable
-{
+public class MysqlTable {
private MysqlDatabase database;
- private String name;
-
- public MysqlTable(MysqlDatabase database, String name)
- {
+ private String name;
+
+ public MysqlTable(MysqlDatabase database, String name) {
this.database = database;
this.name = name;
}
-
- public String getName()
- {
+
+ public String getName() {
return this.name;
}
-
- public MysqlField[] describe()
- {
- try
- {
- List<MysqlField> description = new ArrayList<>();
- DatabaseMetaData metadata = database.getConnection().getMetaData();
- ResultSet queryResults = metadata.getColumns(null, null, name, null);
- while (queryResults.next())
- {
- description.add(new MysqlField(queryResults.getString(4),
- queryResults.getString(6).split(" ")[0] + "(" + queryResults.getString(7) + ")",
- queryResults.getBoolean(11)));
- }
- return description.toArray(new MysqlField[0]);
- }
- catch (SQLException e)
- {
- e.printStackTrace();
- return null;
- }
- }
-
- public boolean insert(String... values)
- {
+
+ public boolean insert(String... values) {
MysqlField[] description = describe();
- if (values.length > 0 && values.length == description.length)
- {
+ if (values.length > 0 && values.length == description.length) {
String val = "(\"" + String.join("\",\"", values) + "\")";
- return MysqlQueryHandler.queryNoResult(database.getConnection(),
- "INSERT INTO `" + name + "` VALUES " + val + ";");
- }
- else
- {
+ return MysqlQueryHandler.queryNoResult(
+ database.getConnection(),
+ "INSERT INTO `" + name + "` VALUES " + val + ";"
+ );
+ } else {
return false;
}
}
-
- public Object[] get(String fieldName, MysqlConstraint... constraints)
- {
- ResultSet results = MysqlQueryHandler.queryResult(database.getConnection(),
- "SELECT " + fieldName + " FROM `" + name + "`" + getConstraints(constraints) + ";");
- List<Object> resObj = new ArrayList<>();
- try
- {
- while (results.next())
- {
- resObj.add(results.getObject(1));
+
+ public MysqlField[] describe() {
+ try {
+ List<MysqlField> description = new ArrayList<>();
+ DatabaseMetaData metadata = database.getConnection().getMetaData();
+ ResultSet queryResults = metadata.getColumns(null, null, name, null);
+ while (queryResults.next()) {
+ description.add(new MysqlField(
+ queryResults.getString(4),
+ queryResults.getString(6).split(" ")[0] + "(" + queryResults.getString(7) + ")",
+ queryResults.getBoolean(11)
+ ));
}
- }
- catch (SQLException e)
- {
+ return description.toArray(new MysqlField[0]);
+ } catch (SQLException e) {
e.printStackTrace();
- return new Object[0];
+ return null;
}
- return resObj.toArray(new Object[0]);
}
-
- public Object[] get(String statement)
- {
- ResultSet results = MysqlQueryHandler.queryResult(database.getConnection(), statement);
+
+ public Object[] get(String fieldName, MysqlConstraint... constraints) {
+ ResultSet results = MysqlQueryHandler.queryResult(
+ database.getConnection(),
+ "SELECT " + fieldName + " FROM `" + name + "`" + getConstraints(constraints) + ";"
+ );
List<Object> resObj = new ArrayList<>();
- try
- {
- while (results.next())
- {
+ try {
+ while (results.next()) {
resObj.add(results.getObject(1));
}
- }
- catch (SQLException e)
- {
+ } catch (SQLException e) {
e.printStackTrace();
return new Object[0];
}
return resObj.toArray(new Object[0]);
}
-
- public boolean delete(MysqlConstraint... constraints)
- {
- return MysqlQueryHandler.queryNoResult(database.getConnection(),
- "DELETE FROM `" + name + "`" + getConstraints(constraints) + ";");
- }
-
- public boolean drop()
- {
- return MysqlQueryHandler.queryNoResult(database.getConnection(), "DROP TABLE `" + name + "`;");
- }
-
- private String getConstraints(MysqlConstraint... constraints)
- {
+
+ private String getConstraints(MysqlConstraint... constraints) {
String cons = "";
- if (constraints.length > 0)
- {
+ if (constraints.length > 0) {
cons += " WHERE ";
- for (int i = 0; i < constraints.length; i++)
- {
+ for (int i = 0; i < constraints.length; i++) {
MysqlConstraint constraint = constraints[i];
cons += constraint.getFieldName() + constraint.getOperator().toString() + "\"" + constraint.getValue()
- + "\"";
- if (i < constraints.length - 1)
- {
+ + "\"";
+ if (i < constraints.length - 1) {
cons += " AND ";
}
}
}
return cons;
}
+
+ public Object[] get(String statement) {
+ ResultSet results = MysqlQueryHandler.queryResult(database.getConnection(), statement);
+ List<Object> resObj = new ArrayList<>();
+ try {
+ while (results.next()) {
+ resObj.add(results.getObject(1));
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ return new Object[0];
+ }
+ return resObj.toArray(new Object[0]);
+ }
+
+ public boolean delete(MysqlConstraint... constraints) {
+ return MysqlQueryHandler.queryNoResult(
+ database.getConnection(),
+ "DELETE FROM `" + name + "`" + getConstraints(constraints) + ";"
+ );
+ }
+
+ public boolean drop() {
+ return MysqlQueryHandler.queryNoResult(database.getConnection(), "DROP TABLE `" + name + "`;");
+ }
}