Como executar a query depois da chamada do form?

Galera, boa noite!

Estou com uma dúvida, eu não sei se conseguirei explicar direito. No meu método Main eu faço a conexão com o banco de dados, checo se existe tabela ou não, chamo um form e no fim está a execução da query no banco de dados. Beleza.
Acontece que logo após chamar o form, já aparece um erro de execução do banco de dados! Segue abaixo a falha:

[color=red]“java.sql.SQLException: Can not issue empty query.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919)
at com.mysql.jdbc.StatementImpl.checkNullOrEmptyQuery(StatementImpl.java:528)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1748)
at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1730)
at br.com.learning.usuarios.TestaAula12.main(TestaAula12.java:54)”[/color]

Acredito que a falha é ocasionada por conta de eu executar a query com o parâmetro vazio. Porém o programa continua a execução!

Eis a dúvida, como eu faço pra executar essa query então? Não consigo definir onde eu encaixo o código!

Segue abaixo o que eu fiz, o método Main, e em anexo a estrutura do meu cadastro.

import java.sql.*;

import br.com.learning.negocios.Conexao;
import br.com.learning.negocios.CreateTableCursos;

public class TestaAula12 {

	/**
	 * @param args
	 * @throws SQLException 
	 */
	public static void main(String[] args) throws SQLException {
/*		br.com.learning.negocios.Query qryMain = new br.com.learning.negocios.Query();
		qryMain.criaConexao();
		qryMain.criaTabela();*/
		
		String qdb="";
		String q="";
		
		Conexao.getConnection();
		System.out.println(Conexao.status);
		Connection con = Conexao.getConnection();
		Statement st = con.createStatement();
		
		DatabaseMetaData dbm = con.getMetaData();
		ResultSet tables = dbm.getTables(null, null, "cursos", null);
		if (tables.next()) {
			System.out.println("Tabela \"Cursos\" já existe!");
		}
		else {
			CreateTableCursos ct = new CreateTableCursos();
			qdb=ct.newTable(qdb);
			try {
				st.executeUpdate(qdb);
				System.out.println("Tabela Cursos criada!");				
			} catch (SQLException e) {
				e.printStackTrace();
				System.out.println("Tabela Cursos já existe!");
			}
		}
		
		Cadastro cad = new Cadastro();
		cad.criarTela();
		
		try {
			st.executeUpdate(q);
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

}

Não sei se eu expliquei bem, caso não esteja claro me avisem que tentarei explicar de novo, estou patinando a dias e só falta conseguir utilizar o retorno da chamada com a query que eu quero para a execução do teste, no final do Main.

Obrigado!