Duvida em MySQL

1 resposta
diogofabri

Olá galera tudo bem???
Fiz um código que cria uma tabela em um banco mysql.
Onde temos a opção de salvar, consultar.

Minha duvida eh a seguinte:
1º - Preciso de um servidor MySQL, para testar meu codigo, alguem sabe onde posso achar um?E o Endereço IP dele....
2º - Peço que analise a CONSULTA.Estou com duvida se o acesso pode ser feito deste modo.

Locais a serem analisados: Linha: 21 à 31(MySQL), 139 à 156(Botao Consulta), 276 à 328(Função Consulta).

Obs: Sei que é muito ultrapassado Container, mas foi exigência do trabalho.

Obrigado pela atenção!

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;//componentes de interface
import java.sql.*;

public class Aplicacao extends JFrame //JFrame consegue usar a janela
{
     private JButton butSalvar, butCriarTabela,butLimpar,butVisualizar,butSair,butConsultar;//botao
     private JTextField nomeTF,enderecoTF,cidadeTF,cepTF,estadoTF,sexoTF,nomeTF1,enderecoTF1,cidadeTF1, cepTF1, estadoTF1,sexoTF1;
     private JLabel nome,estado,endereco,cep,cidade,sexo,nome1,estado1,endereco1,cep1,cidade1,sexo1;
     private JPanel p1 = new JPanel();
     private JPanel p2 = new JPanel();//painel dos botoes em forma centralizada(configurada mais abaixo)
     private JPanel p3 = new JPanel();//painel radiobutton
     private JPanel p4 = new JPanel();//painel oculto
     private JRadioButton cb1,cb2;//radiobutton
     private ButtonGroup bg; 
     private Container c;//todos os componentes são colocados dentro de um container
     private JComboBox listadeestados;
     private String nomeestados[]={"MG","SP","RJ","MS","MT","PR"},NomePe,NomeP,CidadeP,EstadoP,EnderecoP,SexoP;
    
   private String driver = "com.mysql.jdbc.Driver";  // Driver de MySQL
     private String URL = ""; // Aqui vem o IP do servidor
    
     // Você tem que colocar o nome do seu banco. Você coloca o localhost se o MySql estiver na mesma maquina 
     // Aplicação, senão você tem que colocar o ip do servidor de Dados e o nome do banco 

     private String USE = "";//Usuario
    
     // Seu usuário de acesso no MySQL 

     private String SENHA = "";//Senha
     

     // Sua senha de acesso no MySQL 

     private Connection Conexao;//objeto que fará a conexão
     public Aplicacao()//construtor
     {
          super("Aplicacao grafica simples");//super,chama o metodo da super classe, JFrame

          // Cria os componentes
          nome = new JLabel("Nome:");
          nomeTF = new JTextField(10);
          endereco = new JLabel("Endereço:");
          enderecoTF = new JTextField(30);
          cep = new JLabel("CEP:");
          cepTF = new JTextField(8);
          cidade = new JLabel("Cidade:");
          cidadeTF = new JTextField(20);
          estado = new JLabel("Estado:");         
          sexo = new JLabel("Sexo:");
          sexoTF = new JTextField(9);
          //Painel quatro
          nome1 = new JLabel("Nome:");
          nomeTF1 = new JTextField(10);
          nomeTF1.setEnabled(false);//desabilita
          endereco1 = new JLabel("Endereço:");
          enderecoTF1 = new JTextField(30);
          enderecoTF1.setEnabled(false);//desabilita
          cep1 = new JLabel("CEP:");
          cepTF1 = new JTextField(8);
          cepTF1.setEnabled(false);//desabilita
          cidade1 = new JLabel("Cidade:");
          cidadeTF1 = new JTextField(20);
          cidadeTF1.setEnabled(false);//desabilita
          estado1 = new JLabel("Estado:");
          estadoTF1 = new JTextField(2); 
          estadoTF1.setEnabled(false);//desabilita	         
          sexo1 = new JLabel("Sexo:");
          sexoTF1 = new JTextField(9);
          sexoTF1.setEnabled(false);//desabilita
          ButtonGroup bg = new ButtonGroup();
          cb1 = new JRadioButton("Masculino",true);
          cb2 = new JRadioButton("Feminino",false);
          bg.add(cb1);//adiciona ao button group
          bg.add(cb2);// ....
          listadeestados = new JComboBox(nomeestados);//vetor com as strings declaradas
          butCriarTabela = new JButton("Criar Tabela");//Escrevendo dentro do botao
          butLimpar = new JButton("Limpar");//Limpa todos os campos 
          butVisualizar = new JButton("Visualizar");//Visualiza
          butSair = new JButton("Sair");
          butConsultar = new JButton("Consultar");
          butSalvar = new JButton ("Salvar");
          butSalvar.setEnabled(false);//so pode clicar no botao de salvar apos criar tabela no banco, por isso esta desativado
          		
          
          //Atribuição de Ação aos botões
          butCriarTabela.addActionListener(
                    new ActionListener()
                    {
                              public void actionPerformed(ActionEvent e)//se clicar executa a açao.
                              {
                                 CriaTabelaDados();//cria a tabela no banco
                                 butSalvar.setEnabled(true);//ativa o salvar
                              }

                    } );
		  
          butSalvar.addActionListener(
                    new ActionListener()
                    {
                              public void actionPerformed(ActionEvent e)
                              {
                                 InsereDadosTabela();//pega os dados do formulario e insere na tabela
                              }
                    } );
	    
		  butLimpar.addActionListener(
		  			new ActionListener()
		  			{
		  					  public void actionPerformed(ActionEvent e)
		  					  {
		  					  	nomeTF.setText("");
		  					  	enderecoTF.setText("");
		  					  	cepTF.setText("");
		  					  	cidadeTF.setText("");
		  					  	listadeestados.setSelectedIndex(0);
		  					  	cb1.setSelected(true);
		  					  	cb2.setSelected(false);	  					  	         
		  					  }
		  			} );
		  					
		  butVisualizar.addActionListener(
		  			new ActionListener()
		  			{
		  					  public void actionPerformed(ActionEvent e)
		  					  {
		  					  	nomeTF1.setText(nomeTF.getText());
		  					  	enderecoTF1.setText(enderecoTF.getText());
		  					  	cepTF1.setText(cepTF.getText());
		  					  	cidadeTF1.setText(cidadeTF.getText());
		  					  	estadoTF1.setText(listadeestados.getSelectedItem().toString());
		  					  	if(cb1.isSelected() == true)
		  					  		sexoTF1.setText("Masculino");
		  					  	else sexoTF1.setText("Feminino");			  					  	
		  					  }	
		  			} ); 
		  
		 butConsultar.addActionListener(
                    new ActionListener()
                    {
                              public void actionPerformed(ActionEvent e)//se clicar executa a açao.
                              { 
                              
                                
                               NomeP = nomeTF.getText();
                               ConsultaTabelaDados(NomeP);
                               
                               nomeTF1.setText(NomePe);
                               estadoTF1.setText(EstadoP);
                               sexoTF1.setText(SexoP);
                               enderecoTF1.setText(EnderecoP);
                               cidadeTF1.setText(CidadeP);                                                                                                                                                                                   
                              }

                    } );	 
		 			
		  butSair.addActionListener(
                    new ActionListener()
                    {
                              public void actionPerformed(ActionEvent e)
                              {
                                 System.exit(0);                                        
                              }
                    } );		  				  	
		  	
          // Define o layout do container básico
          c = getContentPane();
          c.setLayout(new GridLayout(4,3));//container dividido em 3linhas por 1 coluna

          // Define o layout dos Panels
          p1.setLayout(new GridLayout(5,2));//painel dividido em 4linhas por 4colunas
          p2.setLayout(new GridLayout(1,3));
	      p3.setLayout(new FlowLayout(FlowLayout.CENTER)); //ALINHA COMPONENTES 		
          p4.setLayout(new GridLayout(6,2));//painel dividido em 4linhas por 4colunas 
          // Adiciona os componentes aos panels
          
          p1.add(nome); p1.add(nomeTF); 
          p1.add(endereco); p1.add(enderecoTF);
          p1.add(cep); p1.add(cepTF);          
          p1.add(cidade);p1.add(cidadeTF);          
          p1.add(estado);
          p1.add(listadeestados); //adiciona combobox 
          
          p2.add(sexo);p2.add(cb1); p2.add(cb2);//adiciona radiobutton               
         
          p3.add(butSalvar);//adiciona botao salvar
          p3.add(butCriarTabela);//adiciona botao criar tabela
		  p3.add(butVisualizar);
		  p3.add(butConsultar);
		  p3.add(butLimpar);
		  p3.add(butSair);		 
		  	
          p4.add(nome1);p4.add(nomeTF1); 
          p4.add(endereco1);p4.add(enderecoTF1);
          p4.add(cep1); p4.add(cepTF1);
          p4.add(cidade1);p4.add(cidadeTF1);                    
          p4.add(estado1);p4.add(estadoTF1);
          p4.add(sexo1);p4.add(sexoTF1);        
          
          
          // Adiciona os panels ao container básico
          c.add(p1);//painel 1 adicionado ao container
          c.add(p2);//painel 2 adicionado ao container
		  c.add(p3);//painel 3 adicionado ao container
		  c.add(p4);//painel 4 adicionado ao container
		  
          pack();
          show();
     }

     void CriaTabelaDados()
     {
          System.out.println("Carregando o driver JDBC ODBC...\n\n");
          try
          {
               Class.forName("com.mysql.jdbc.Driver");
          }
          catch(ClassNotFoundException Erro)
          {
               System.out.println("Não e possivel carregar o driver...\n\n");
          }
          try
          {
               Connection Conexao = DriverManager.getConnection(URL, USE, SENHA);
               Statement FluxoSQL = Conexao.createStatement();
               String InstrucaoSQL = "CREATE TABLE Pessoa (Nome CHAR(35), Estado CHAR(2), Sexo CHAR(1), Endereco CHAR(35), Cidade CHAR(20))";//crie a tabela pessoa com:
               FluxoSQL.executeUpdate(InstrucaoSQL);
               System.out.println("Instrução SQL executada com sucesso...Tabela criada...\n\n");
               FluxoSQL.close();
               Conexao.close();
               System.out.println("Conexão encerrada...\n\n");
          }
          catch(SQLException Erro)
          {
               System.out.println("Não foi possível conectar-se à Base de Dados e criar a tabela...\n\n");
          }
     }

     void InsereDadosTabela()
     {
          System.out.println("Carregando o driver JDBC ODBC...\n\n");
          try
          {
               Class.forName("com.mysql.jdbc.Driver");
          }
          catch(ClassNotFoundException Erro)
          {
               System.out.println("Não e possivel carregar o driver...\n\n");
          }
          try
          {
               Connection Conexao = DriverManager.getConnection(URL, USE, SENHA);
               Statement FluxoSQL = Conexao.createStatement();
               String Nome = nomeTF.getText();//recebe o que esta dentro do nome do campo texto
               String Estado = listadeestados.getSelectedItem().toString();
               String Endereco = enderecoTF.getText();
               String Cidade = cidadeTF.getText();
               String Sexo="M";
               if (cb2.isSelected()) 
                   Sexo = "F"; 
                   
               String InstrucaoSQL = "INSERT INTO Pessoa VALUES ('" + Nome + "','" + Estado + "','" + Sexo + "','" + Endereco + "','" + Cidade +"')";//insira na tabela pessoa os seguintes caracteres
               FluxoSQL.executeUpdate(InstrucaoSQL);
               System.out.println("Instrução SQL executada com sucesso...\n\n");
               FluxoSQL.close();
               Conexao.close();
               System.out.println("Conexão encerrada...\n\n");
          }
          catch(SQLException Erro)
          {
               System.out.println("Não foi possível conectar-se à Base de Dados e inserir dados na tabela...\n\n");
          }
     }
    
	 public void ConsultaTabelaDados(String NomeP)
	{
		int j=0,i=1;
         System.out.println("Carregando o driver JDBC ODBC...\n\n");
          try
          {
               Class.forName("com.mysql.jdbc.Driver");
          }
          catch(ClassNotFoundException Erro)
          {
               System.out.println("Não e possivel carregar o driver...\n\n");
          }
          try
          {
               Connection Conexao = DriverManager.getConnection(URL, USE, SENHA);
               Statement FluxoSQL = Conexao.createStatement();
               Statement InstrucaoSelectSQL = Conexao.createStatement();
               ResultSet Resultados = InstrucaoSelectSQL.executeQuery("SELECT  NomePe, CidadeP, EstadoP FROM Pessoa");

              
                // Testa so resultados encontrados
                while (Resultados.next())
                {
                	if(NomeP == Resultados.getString(i).trim())
                	{
                   		String NomePe = Resultados.getString(1).trim();                   		
                   		String EstadoP = Resultados.getString(2).trim();
                   		String SexoP = Resultados.getString(3).trim();
                   		String EnderecoP = Resultados.getString(4).trim();
                   		String CidadeP = Resultados.getString(5).trim();			
						
						System.out.println("Nome  = " + NomePe);                   		
                  		System.out.println("Estado = " + EstadoP);
                  		System.out.println("SexoP = " + SexoP);
                  		System.out.println("EnderecoP = " + EnderecoP);
                  		System.out.println("Cidade = " + CidadeP);
                  		System.out.println("\nResultados Encontrados = " + j);
                  		j++;
                  	}
                  	i++;			                  
                }

                System.out.println("\n\nInstrução SQL executada com sucesso...");
                InstrucaoSelectSQL.close();

                Conexao.close();
                System.out.println("Conexão encerrada...\n\n");
          }
          catch(SQLException Erro)
          {
               System.out.println("Não foi possível conectar-se à Base de Dados e criar a tabela...\n\n");
	      }
	}

 public static void main(String args[])
     {
          Aplicacao ap = new Aplicacao();
          ap.addWindowListener(//Ação de janela,qdo clicar no X da janela ele sai.
               new WindowAdapter()//Segue a explicacao acima
               {
                    public void windowClosing(WindowEvent e)//Segue a explicacao acima
                    {
                        System.exit(0);
                    }
               });
          }
}

[color=red] [/color]

1 Resposta

venomtotal

bom, entendi que vc quer um server free com mysql.

nunca testei, mas o pessoal sempre fala desse;
http://www.freesql.org

Ah, recursos bem limitados. Como poder criar apenas uma base :cry:

Criado 12 de junho de 2008
Ultima resposta 13 de jun. de 2008
Respostas 1
Participantes 2