Problemas com executeQuery(String sql);

4 respostas
EuclidesFilizola

ae, problemas aqui com o meu código. pq ele não funfa ? já testei a conexão com o banco, ele conecta direitinho.

package teste;
import javax.swing.*; 

import java.awt.*; 
import java.awt.event.*; 
import java.sql.*;

public class ManipulaTabela  extends JFrame{
	
	public void ManipulaTabela(){
		try{
		   String url = "jdbc:mysql://localhost/test"; 
		    String usuario = "root"; 
		    String senha = "root";           
		    Class.forName("com.mysql.jdbc.Driver"); 
		   Connection con; 
		    con = DriverManager.getConnection(url,usuario,senha); 
		    Statement st = con.createStatement(); 
		    String query = "CREATE TABLE tabela1(campo1 VARCHAR(50))";
		    ResultSet rs =  st.executeQuery(query);
		   
		    JOptionPane.showMessageDialog(null,"Dados Criado Com Sucesso",
		    		"Mensagem do Programa",JOptionPane.INFORMATION_MESSAGE); 
		    con.close();
		   
	}catch(Exception e){
		JOptionPane.showMessageDialog(null,"Conexão  não  estabelecida  \n"+ 
				"Comandos Inválidos","Mensagem do Programa",JOptionPane.ERROR_MESSAGE);
	}

}
	
	 public static void main(String args[]){ 
    	 ManipulaTabela tb1 = new ManipulaTabela(); 
    	 
    	 tb1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    	 }    
}

eu to tentando criar uma tabela tabela1(campo tipo) no banco test. porem não funfa, e ele não me retorna nenhuma mensagem de erro ou algo do tipo. alguém pode me ajudar? agradeço antecipadamente.

4 Respostas

digaum

Amigo,

Para que vc instancia o ResultSet sendo que nao vai usá-lo em lugar algum…

Simplesmente use executeQuery(sql);

Porém no seu caso acho melhor usar o executeUpdate(sql); nao tenho muita certeza da uma testada e mostra ae pra gente…

Após usar, feche a conexao e o stmt!

oculos

e ai, tenta usar o executeUpdate() não o executeQuery(),
pq. o executeQuery() é para executar por exemplo um select e retornar
o mesmo e o executeUpdate() é para comandos update, create, drop, etc…

valeu!!

EuclidesFilizola

valeuu galeraaa… funcionou !! =D.

kaique

Se as dicas acima não resolverem, tenta trocar essas linhas:

JOptionPane.showMessageDialog(null,"Conexão  não  estabelecida  \n"+ 
				"Comandos Inválidos","Mensagem do Programa",JOptionPane.ERROR_MESSAGE);

Por essa:

e.printStackTrace();

Assim você vai ver qual o problema que está acontecendo, se realmente estiver acontecendo algum problema…

[]'s.

Criado 13 de março de 2008
Ultima resposta 13 de mar. de 2008
Respostas 4
Participantes 4