First of all thanks to those that helped me previously.
The issue that I'm having at the moment, is with either this line of code
statement.executeUpdate(myTableName);
or with these lines of code
String myTableName = "CREATE TABLE AgentDetail ("
+ "idNo INT(64) NOT NULL AUTO_INCREMENT,"
+ "initials VARCHAR(2),"
+ "agentDate DATE,"
+ "agentCount INT(64))";
When it code reaches these points, it generates an error which is caught by the SQLException block.
It is either very simple or it is very complicated
Could anybody point out where this newbie to Java MySQL programming has made the error and hopefully not errors, thanks in advance
Here is the Rest of the code in full
public class DbStuff {
private String jdbcDriver = "com.mysql.jdbc.Driver";
private String dbAddress = "jdbc:mysql://localhost:3306/";
private String userPass = "?user=root&password=";
private String dbName = "TIGER19";
private String userName = "root";
private String password = "";
private PreparedStatement preStatement;
private Statement statement;
private ResultSet result;
private Connection con;
public DbStuff() {
try {
Class.forName(jdbcDriver);
con = DriverManager.getConnection(dbAddress + dbName, userName, password);
}
catch (ClassNotFoundException e) {
e.printStackTrace();
}
catch (SQLException e) {
createDatabase();
createTableCub1();
}
}
private void createDatabase() {
try {
Class.forName(jdbcDriver);
con = DriverManager.getConnection(dbAddress + userPass);
Statement s = con.createStatement();
int myResult = s.executeUpdate("CREATE DATABASE IF NOT EXISTS " + dbName);
}
catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
private void createTableCub1() {
String myTableName = "CREATE TABLE AgentDetail ("
+ "idNo INT(64) NOT NULL AUTO_INCREMENT,"
+ "initials VARCHAR(2),"
+ "agentDate DATE,"
+ "agentCount INT(64))";
try {
Class.forName(jdbcDriver);
con = DriverManager.getConnection(dbAddress + dbName, userName, password);
statement = con.createStatement();
//The next line has the issue
statement.executeUpdate(myTableName);
System.out.println("Table Created");
}
catch (SQLException e ) {
System.out.println("An error has occurred on Table Creation");
}
catch (ClassNotFoundException e) {
System.out.println("An Mysql drivers were not found");
}
}
}
e.printStackTrace()into yourcatchblock. Get the stacktrace and add to your post.Connection.setCatalog(dbName);between db creation and table creation, but the actual error message is needed to confirm.System.out.println(e.getMessage())to yourcatchblock (ande.printStackTrace()) to get both the error message and the place where it happens.