Darkside  

Voltar   Darkside > Darkside > Comunidade
FAQ Calendário Postagens do dia Buscapé Search

Responder
 
Thread Tools
maxcool
Banned
 

PSN ID: atcasanova
Default MySQL 5.0

15-02-06, 09:32 #1
Oi pipou

puxei o MySQL 5.0 aki, kero aprender banco de dados, to atrasado nisso ja

instalei o MySQL, MySQL Query Browser e o MySQL Administrator

mas e aí, onde crio tabelas?
entrei no mysql administrator, mas ele pede usrname e senha
qdo instalei setei uma senha, mas nao sei o username
bora bora bora
me ayudem!

eu quero um wizard munitinho, izi de usar!





maxcool is offline   Reply With Quote
Raposao
Trooper
 

15-02-06, 09:33 #2
Tenta o usuário ROOT

Raposao is offline   Reply With Quote
PIT BULL
Trooper
 

XFIRE ID: pitbull666br Steam ID: pitbull666br
15-02-06, 09:37 #3
Eu aprendi a criar via linha de comando, é chique... pelo menos pra quem estava só acostumado a usar o Interprise Manager.

PIT BULL is offline   Reply With Quote
Raposao
Trooper
 

15-02-06, 09:39 #4
Por linha de comando basta você ver se o BIN do MySQL esta no PATH! Se não tiver, coloque ou vá pro diretório! Ai você dá um:
"mysql -uroot -p" ---> digita a senha e depois já esta na console! É só executar os DML (INSERT, UPDATE, DELETE etc)...

Mas pelo que entendi PIT, ele quer algo gráfico...

Raposao is offline   Reply With Quote
Bombastic
The Alpha Male
 

15-02-06, 09:53 #5
pl-sql user<enter>
senha


kbo

Bombastic is offline   Reply With Quote
un4
inativo
 

15-02-06, 09:55 #6
Se você tiver uma máquina foda, usa o DbVisualizer.. ele se conecta virtualmente em qualquer banco se vc tiver os drivers jdbc. Mas esse programa é MUITO pesado.

Se for só mysql, eu uso o SQLyog.. pelo menos pra oq eu faço, tá de bom tamanho.

Se você quiser ser PRÓ, não usa esses programa pra criar/modificar tabela, use migrations com rails

http://api.rubyonrails.org/classes/A...Migration.html

Code:
  class AddSystemSettings < ActiveRecord::Migration
    def self.up
      create_table :system_settings do |t|
        t.column :name,     :string
        t.column :label,    :string
        t.column :value,    :text
        t.column :type,     :string
        t.column :position, :integer
      end

      SystemSetting.create :name => "notice", :label => "Use notice?", :value => 1
    end

    def self.down
      drop_table :system_settings
    end
  end

un4 is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 10:04 #7
e se eu nao tiver uma maquina FODA, nem quiser ser PRO, e quiser apenas ser + um noob q faz sisteminhas de agenda e protocolo?

só quero brincar, nao quero ser profissa...

maxcool is offline   Reply With Quote
maze
Trooper
 

Gamertag: tonighter
15-02-06, 10:07 #8
maxcool msn

posted by kenshin.

maze is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 10:11 #9
porra, eu nao quero ficar em console dando create table
até o access tem wizard, eu so quero isso
eu usaria o access, mas pro que to querendo eu preciso de double pk, e nao sei nem quero aprender fazer isso no access.

baixei o oracle xpress, mas ele eh muita areia pro caminhaozinho que eu quero pilotar
entao vou de mysql

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 11:30 #10
entao
instalei o mysql numa maquina aki, e instalei o mysql administrator na minha maquina e consegui acessar la, criar user e tal
agora falta o wizardzinho pra criar tabelas, falta eu saber instalar/configurar o driver odbc do mysql e a string de conexao dele, como fica?

maxcool is offline   Reply With Quote
Pena
Trooper
 

15-02-06, 11:32 #11
La vem o Una com o Rails dele !
Faz o seguinte Maxcool, aprende antes de mais nada, tudo na Mão, e outra coisa, começar desse jeito é a pior maneira viu, Banco de Dados não é sair criando tabela e jogando informação dentro.

Pena is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 11:39 #12
pena, eu sei o basico de banco de dados, ja estudei a respeito, conheço normalizacao, formas normais e tal... a 'burocracia' eu sei toda... só que NUNCA usei nada > access... e to kerendo aprender, na marra
sei sair dando os create tables ae, mas nao eh isso que quero. quero praticidade/velocidade =)

maxcool is offline   Reply With Quote
Pena
Trooper
 

15-02-06, 11:42 #13
Praticidade pra quem diz que ta começando, não é a palavra certo né Maxcool ! Eu to falando que é melhor você fazer os esquemas tudo na Mão, porque depois quando começam os SELECT´s da vida, isso vai te ajudar também !

Pena is offline   Reply With Quote
Eluan
Trooper
 

Steam ID: eluancm
15-02-06, 11:47 #14
Eu aprendi MySQL quando aprendi PHP, hehe
Vale à pena!

Na época eu tava criando um sistema de contas pro Quake, e funcionava com PHP+MySQL :P

Comece na mão, aprenda tudo (do básico) via console mesmo!

Eluan is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 11:52 #15
o cacete
eu NAO VOU e NEM QUERO dar create table
eu sei sql pra consultas, inclusoes, alteracoes, inner joins, etc.
nao quero criar tabelas
:} {:

maxcool is offline   Reply With Quote
Pena
Trooper
 

15-02-06, 11:57 #16
Então você quer fazer o que com o SQL ?
Escutar jogo do Flamengo ?

Pena is offline   Reply With Quote
Kensha
Trooper
 

Gamertag: ksnrodrigoms PSN ID: rodrigo_machado
15-02-06, 12:00 #17
e da pra fazer isso pena? jura?


Kensha is offline   Reply With Quote
Pena
Trooper
 

15-02-06, 12:02 #18
Quer apostar quanto que ele vai perguntar isso ?

Pena is offline   Reply With Quote
Kensha
Trooper
 

Gamertag: ksnrodrigoms PSN ID: rodrigo_machado
15-02-06, 12:03 #19
ta casado
10 pila
hausidohiausdhui

Kensha is offline   Reply With Quote
gusto
Trooper
 

15-02-06, 12:05 #20
e o Pena vê episodio de Cavaleiros do Zodiaco no SQL.
rááá

gusto is offline   Reply With Quote
Pena
Trooper
 

15-02-06, 12:09 #21
Não, eu não vejo CDZ no SQL, vejo na Televisão ou no PC.
E você acabou de perder seu OP shuauhDAHUaS

Maxcool, o negócio é que você falar, EU VOU USAR SQL E PRONTO, mas vai usar porque ? Pra que ? Provavelmente se vai precisar dele pra servir de Banco pra alguma aplicação ou coisa do tipo, tenta pegar alguma linguagem que você conheça e começar a trabalhar com os dois também !

Pena is offline   Reply With Quote
shogun
Trooper
 

15-02-06, 12:18 #22
Eu to usando o EMS SQL Manager pra um trabalhinho de férias, ele é shareware, mas pra o q estou fazendo 30 dias é suficiente.
Se quiser criar o diagrama relacional e a partir dele gerar os sqls pra criar as tabelas, tem o DBDesigner (opensource)

shogun is offline   Reply With Quote
Choke
Trooper
 

Gamertag: wrparra Steam ID: wrparra
15-02-06, 12:25 #23
Quote:
Postado por maxcool
o cacete
eu NAO VOU e NEM QUERO dar create table
eu sei sql pra consultas, inclusoes, alteracoes, inner joins, etc.
nao quero criar tabelas
:} {:
eita... como vc vai fazer essas coisas em criar as tabelas antes? uehahuehuae
o mysql administrator tem telinhas iguais ao access pra criação/alteração de tabelas

Choke is offline   Reply With Quote
Biel
Trooper
 

15-02-06, 12:27 #24
Quote:
Postado por maxcool
o cacete
eu NAO VOU e NEM QUERO dar create table
eu sei sql pra consultas, inclusoes, alteracoes, inner joins, etc.
nao quero criar tabelas
:} {:
bah, quer fazer o que então???
até onde eu sei não dá de brincar de casinha com mysql... =/

Biel is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 13:10 #25
boceta
ja achei o bagulho pra criar tabelas no administrator, era isso q eu queria
setar chave primaria dupla e tal
agora preciso da string de conexao do mysql
como eh?

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 13:18 #26
ah, tb preciso do driver odbc dele, como instalo?

maxcool is offline   Reply With Quote
Choke
Trooper
 

Gamertag: wrparra Steam ID: wrparra
15-02-06, 13:27 #27
aff max... vc não explica ... soh complica!! aueahueuhae
strings de conexão http://www.connectionstrings.com/

Choke is offline   Reply With Quote
Choke
Trooper
 

Gamertag: wrparra Steam ID: wrparra
15-02-06, 13:30 #28

Choke is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 14:04 #29
valeo vo tentar =*

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 14:40 #30
to fazendo assim no java
Code:
// Importa os pacotes necessários
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

/** Conexao
 * [ teste de banco de dados ]
 * @author Alfredo Casanova
 * @version 1.0
 */
public class Conexao extends JFrame {

    // Bloco 1 - Objetos da Janela
    private JTextArea txt1;
    private JTextArea txt2;
    private JButton objeto5;
    private JLabel console;

    public Conexao() {
        try {
            mostra();
        } catch(Exception ex) {
            ex.printStackTrace();
        }
    }

    private void mostra() throws Exception {

        // Bloco 2 - Definição dos dados da Janela
        this.getContentPane().setLayout(null);
        this.getContentPane().setBackground(new Color(238, 238, 238));
        this.setSize(304, 209);
        this.setLocation(232, 185);
        this.setTitle("banco de dados");
        this.setResizable(false);

        // Bloco 3 - Criação dos Objetos na Janela
        txt1 = new JTextArea();
        txt1.setBounds(new Rectangle(8, 11, 130, 80));
        this.getContentPane().add(txt1, null);
        txt2 = new JTextArea();
        txt2.setBounds(new Rectangle(159, 13, 130, 80));
        this.getContentPane().add(txt2, null);
        objeto5 = new JButton("OK!");
        objeto5.setBounds(new Rectangle(97, 105, 100, 30));
        this.getContentPane().add(objeto5, null);
        objeto5.addActionListener (new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                Conecta();
            }
        });
        console = new JLabel();
        console.setBounds(new Rectangle(17, 157, 270, 14));
        this.getContentPane().add(console, null);
        this.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                aoFechar();
            }
        });
    }

    private void aoFechar() {
        System.exit(0);
    }

    public void Conecta(){
        String url;
        Statement st;
        Connection cn;
        ResultSet rs;
        //st.executeUpdate("insert into teste values ('2006','06')");
        String texto1="";
        String texto2="";
        try{
        		url="jdbc:mysql://dfbsa020042:3306/teste";
        		//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        		Class.forName("org.gjt.mm.mysql.Driver");
                JOptionPane.showMessageDialog(null,"passou aqui 1");
        		cn=DriverManager.getConnection(url,"atcasanova","atcasanova");
                JOptionPane.showMessageDialog(null,"passou aqui 2");
                console.setText("Conectado");
                st=cn.createStatement();
                
                rs=st.executeQuery("select ano, mes from teste");
                if(!rs.next()){
                	console.setText("Não existe Registro, seu anta!");
                	System.exit(0);
                } 
                
                texto1+="Ano";
                texto2+="Mês";
                //rs.first();
                while (rs.next()){ 
                	texto1+="\n"+rs.getInt("Ano");
                	texto2+="\n"+rs.getInt("Mes");
                }
                txt1.setText(texto1);
                txt2.setText(texto2);

        } catch (ClassNotFoundException cnfe){
            console.setText("Classe não encontrada");
            System.exit(0);
        } catch (SQLException sqle){
            console.setText("Conexão fudida");
            System.exit(0);
        }
    }


    public static void main(String args[]) {
        new Conexao().show();
    }
}
mas ele nao chega no 'passou aqui 2'

whathahell?

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
15-02-06, 16:09 #31
update

Code:
// Importa os pacotes necessários
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

/** Conexao
 * [ teste de banco de dados ]
 * @author Alfredo Casanova
 * @version 1.0
 */
public class Conexao extends JFrame {

    // Bloco 1 - Objetos da Janela
    private JTextArea txt1;
    private JTextArea txt2;
    private JButton objeto5;
    private JLabel console;

    public Conexao() {
        try {
            mostra();
        } catch(Exception ex) {
            ex.printStackTrace();
        }
    }

    private void mostra() throws Exception {

        // Bloco 2 - Definição dos dados da Janela
        this.getContentPane().setLayout(null);
        this.getContentPane().setBackground(new Color(238, 238, 238));
        this.setSize(304, 209);
        this.setLocation(232, 185);
        this.setTitle("banco de dados");
        this.setResizable(false);

        // Bloco 3 - Criação dos Objetos na Janela
        txt1 = new JTextArea();
        txt1.setBounds(new Rectangle(8, 11, 130, 80));
        this.getContentPane().add(txt1, null);
        txt2 = new JTextArea();
        txt2.setBounds(new Rectangle(159, 13, 130, 80));
        this.getContentPane().add(txt2, null);
        objeto5 = new JButton("OK!");
        objeto5.setBounds(new Rectangle(97, 105, 100, 30));
        this.getContentPane().add(objeto5, null);
        objeto5.addActionListener (new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                Conecta();
            }
        });
        console = new JLabel();
        console.setBounds(new Rectangle(17, 157, 270, 14));
        this.getContentPane().add(console, null);
        this.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                aoFechar();
            }
        });
    }

    private void aoFechar() {
        System.exit(0);
    }

    public void Conecta(){
        String url;
        Statement st;
        Connection cn;
        ResultSet rs;
        //st.executeUpdate("insert into teste values ('2006','06')");
        String texto1="";
        String texto2="";
        try{
        		url="jdbc:mysql://10.100.20.42:3306/teste?user=atcasanova&password=atcasanova";
        		//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        		Class.forName("com.mysql.jdbc.Driver").newInstance();
        		//Class.forName("org.gjt.mm.mysql.Driver");
        		cn=DriverManager.getConnection(url);
                JOptionPane.showMessageDialog(null,"teste");
                console.setText("Conectado");
                st=cn.createStatement();
                
                rs=st.executeQuery("select ano, mes from teste");
                if(!rs.next()){
                	console.setText("Não existe Registro, seu anta!");
                	System.exit(0);
                } 
                
                texto1+="Ano";
                texto2+="Mês";
                //rs.first();
                while (rs.next()){ 
                	texto1+="\n"+rs.getInt("Ano");
                	texto2+="\n"+rs.getInt("Mes");
                }
                txt1.setText(texto1);
                txt2.setText(texto2);

        } catch (ClassNotFoundException cnfe){
            System.err.println("Classe não encontrada " + cnfe.getClass() +"\nMensagem: "+cnfe.getMessage());
    		cnfe.printStackTrace();
            System.exit(0);
        } catch (SQLException sqle){
            System.err.println("SQLException: " + sqle.getMessage());
            System.err.println("SQLState: "+ sqle.getSQLState());
            System.err.println("VendorError: "+ sqle.getErrorCode());
            System.exit(0);
        } catch (IllegalAccessException abc){
        	System.err.println(""+abc.getClass()+"\n"+abc.getLocalizedMessage());
        	System.exit(0);
        } catch (InstantiationException ie){
        	System.err.println(""+ie.getClass()+"\n"+ie.getMessage());
        	System.exit(0);
        }
        
       
    }


    public static void main(String args[]) {
    	new Conexao().show();
    }
}
nao adiantou nada
ehehhe

maxcool is offline   Reply With Quote
Skipper
Trooper
 

15-02-06, 16:38 #32

Skipper is offline   Reply With Quote
un4
inativo
 

16-02-06, 11:55 #33
usa o SQLyog só porra

un4 is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 12:07 #34
ae
consegui conectar ao banco, precisava de um tal de ConnectorJ...
ae beleza, aprofundei meus estudos
vi que o java usa executeQuery pra selects, e executeUpdate pra inserts, deletes e updates.

SO
criei um metodo boolean chamado ehConsulta(), bem tosco.

Code:
   boolean ehConsulta(String a){
	   if (a.startsWith("insert") || a.startsWith("update ") || a.startsWith("delete ")) {
		   JOptionPane.showMessageDialog(null, "retorna false (update)"+"\n"+a);
		   return false;
	   } else if (a.startsWith("select"))
		   JOptionPane.showMessageDialog(null, "retorna true (query) "+"\n"+a);
	   		return true;
   }
entao fiz testes com ele, sem chamar selects, nem inserts, nem nada. Apenas escrevi
"insert bla bla bla"
e ele me retornou false e mostrou o codigo certinho.
Depois, escrevi "select bla bla bla" e ele me retornou true e mostrou o codigo certinho.
Então, o metodo estava funcionando. Ele retornava TRUE pra selects e FALSE pro resto.
então baby...
fiz o seguinte:

Code:
         	    if (ehConsulta(query1)){
         	    	rs = st.executeQuery(query1);
         	    } else st.executeUpdate(query1);
onde rs era meu resultset
aí eu dei um select * from teste, ele me mostrou o JOptionPane com a mensagem, e depois o conteudo da tabela. FUNCIONOU!

aí dei um insert into teste values ('2006','06') e ele tentou usar executeQuery, quando era pra tentar executeUpdate
WHY DAVID?

campos ano e mês, respectivamente
ai ele gerou uma SQLException!

SQLException: Can not issue data manipulation statements with executeQuery().
SQLState: S1009
VendorError: 0

ou seja, NAO FUNCIONOU

maxcool is offline   Reply With Quote
Oni
Trooper
 

16-02-06, 12:53 #35
olha pro {} do else if, ou melhor, a falta deles

Oni is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 13:09 #36
Code:
   boolean ehConsulta(String a){
	   if (a.startsWith("insert") || a.startsWith("update ") || a.startsWith("delete ")) {
		   JOptionPane.showMessageDialog(null, "retorna false (update)"+"\n"+a);
		   return false;
	   } else if (a.startsWith("select")){
		   	JOptionPane.showMessageDialog(null, "retorna true (query) "+"\n"+a);
	   		return true;
	   }
	   return true;
   }
mesma merda


Last edited by maxcool; 16-02-06 at 13:12..
maxcool is offline   Reply With Quote
petrasbut
Trooper
 

16-02-06, 13:13 #37
Quote:
Postado por maxcool
ae
consegui conectar ao banco, precisava de um tal de ConnectorJ...
ae beleza, aprofundei meus estudos
vi que o java usa executeQuery pra selects, e executeUpdate pra inserts, deletes e updates.

SO
criei um metodo boolean chamado ehConsulta(), bem tosco.

Code:
   boolean ehConsulta(String a){
	   if (a.startsWith("insert") || a.startsWith("update ") || a.startsWith("delete ")) {
		   JOptionPane.showMessageDialog(null, "retorna false (update)"+"\n"+a);
		   return false;
	   } else if (a.startsWith("select"))
		   JOptionPane.showMessageDialog(null, "retorna true (query) "+"\n"+a);
	   		return true;
   }
entao fiz testes com ele, sem chamar selects, nem inserts, nem nada. Apenas escrevi
"insert bla bla bla"
e ele me retornou false e mostrou o codigo certinho.
Depois, escrevi "select bla bla bla" e ele me retornou true e mostrou o codigo certinho.
Então, o metodo estava funcionando. Ele retornava TRUE pra selects e FALSE pro resto.
então baby...
fiz o seguinte:

Code:
         	    if (ehConsulta(query1)){
         	    	rs = st.executeQuery(query1);
         	    } else st.executeUpdate(query1);
onde rs era meu resultset
aí eu dei um select * from teste, ele me mostrou o JOptionPane com a mensagem, e depois o conteudo da tabela. FUNCIONOU!

aí dei um insert into teste values ('2006','06') e ele tentou usar executeQuery, quando era pra tentar executeUpdate
WHY DAVID?

campos ano e mês, respectivamente
ai ele gerou uma SQLException!

SQLException: Can not issue data manipulation statements with executeQuery().
SQLState: S1009
VendorError: 0

ou seja, NAO FUNCIONOU

era pra ser assim a executeupdate....

Code:
class Insert1 { 
  
	public static void main (String[] args) { 
		try { 
		    String url = "jdbc:msql://200.210.220.1:1114/Demo"; 
		    Connection conn = DriverManager.getConnection(url,"",""); 
		    Statement st = conn.createStatement(); 
		    st.executeUpdate("INSERT INTO Customers " + 
			    "VALUES (1001, 'Simpson', 'Mr.', 'Springfield', 2001)"); 
		    st.executeUpdate("INSERT INTO Customers " + 
			    "VALUES (1002, 'McBeal', 'Ms.', 'Boston', 2004)"); 
		    st.executeUpdate("INSERT INTO Customers " + 
			    "VALUES (1003, 'Flinstone', 'Mr.', 'Bedrock', 2003)"); 
		    st.executeUpdate("INSERT INTO Customers " + 
			    "VALUES (1004, 'Cramden', 'Mr.', 'New York', 2001)");  

		    conn.close(); 
		} catch (Exception e) { 
		    System.err.println("Got an exception! "); 
		    System.err.println(e.getMessage()); 
		} 
  
	}  

}
sei lá... minha habilidade de programar tá adormecida/hibernando

petrasbut is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 13:15 #38
petrasbut

query1 eh o resultado de um textarea que tem um sql

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 13:41 #39
tah
ficou tosco mas funcionou

Code:
// Importa os pacotes necessários
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;

/** Conexao
 * [ Conexao com mysql ]
 * @author Alfredo Casanova © Fev - 2006
 * @version 1.0
 */
public class Conexao extends JFrame {

    // Bloco 1 - Objetos da Janela
    private JTextArea txt1;
    private JTextArea txt2;
    private JButton objeto5;
    private JLabel console;
    private JTextField sqltext;

    public Conexao() {
        try {
            mostra();
        } catch(Exception ex) {
            ex.printStackTrace();
        }
    }

    private void mostra() throws Exception {

        // Bloco 2 - Definição dos dados da Janela
        this.getContentPane().setLayout(null);
        this.getContentPane().setBackground(new Color(238, 238, 238));
        this.setSize(336, 243);
        this.setLocation(232, 185);
        this.setTitle("Conexao");
        this.setResizable(false);

        // Bloco 3 - Criação dos Objetos na Janela
        txt1 = new JTextArea();
        txt1.setBounds(new Rectangle(8, 11, 130, 80));
        this.getContentPane().add(txt1, null);
        txt2 = new JTextArea();
        txt2.setBounds(new Rectangle(192, 12, 130, 80));
        this.getContentPane().add(txt2, null);
        objeto5 = new JButton("OK!");
        objeto5.setBounds(new Rectangle(104, 143, 100, 30));
        this.getContentPane().add(objeto5, null);
        objeto5.addActionListener (new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                Conecta();
            	//ehConsulta(sqltext.getText());
            }
        });
        console = new JLabel();
        console.setBounds(new Rectangle(15, 178, 284, 14));
        this.getContentPane().add(console, null);
        sqltext = new JTextField();
        sqltext.setBounds(new Rectangle(7, 110, 306, 20));
        this.getContentPane().add(sqltext, null);

        this.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                aoFechar();
            }
        });
    }

    private void aoFechar() {
        System.exit(0);
    }

   public void Conecta(){
        String url;
        Statement st;
        Connection cn;
        ResultSet rs;
        String query1="";
        String texto1="";
        String texto2="";
        try{
        	query1=sqltext.getText();
    		url="jdbc:mysql://10.100.20.42:3306/teste?user=atcasanova&password=atcasanova";
    		//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    		Class.forName("com.mysql.jdbc.Driver").newInstance();
    		//Class.forName("org.gjt.mm.mysql.Driver");
    		cn = DriverManager.getConnection(url);
            console.setText("Conectado");
            st = cn.createStatement();
   	    	rs = st.executeQuery("select * from teste");
        	if (ehConsulta(query1)){
       	    	rs = st.executeQuery(query1);
       	    	console.setText(query1);
/*                if(!rs.next()){
                	console.setText("Não existe Registro, seu anta!");
                	System.exit(0);
                }*/
                
                texto1 += "Ano";
                texto2 += "Mês";
                
                while (rs.next()){
                	texto1 += "\n"+rs.getInt("Ano");
                	texto2 += "\n"+rs.getInt("Mes");
                }
                txt1.setText(texto1);
                txt2.setText(texto2);
        		}
        		else{ 
                    st.executeUpdate(query1);
                    console.setText(query1);
    /*                if(!rs.next()){
                    	console.setText("Não existe Registro, seu anta!");
                    	System.exit(0);
                    }*/
                    rs = st.executeQuery("select * from teste");
                    texto1 += "Ano";
                    texto2 += "Mês";
                    
                    while (rs.next()){
                    	texto1 += "\n"+rs.getInt("Ano");
                    	texto2 += "\n"+rs.getInt("Mes");
                    }
                    txt1.setText(texto1);
                    txt2.setText(texto2);
            		}
        	} catch (ClassNotFoundException cnfe){
            System.err.println("Classe não encontrada: " + cnfe.getClass() +"\nMensagem: "+cnfe.getMessage());
    		//cnfe.printStackTrace();
            System.exit(0);
        } catch (SQLException sqle){
            System.err.println("SQLException: " + sqle.getMessage());
            System.err.println("SQLState: "+ sqle.getSQLState());
            System.err.println("VendorError: "+ sqle.getErrorCode());
            System.exit(0);
        } catch (IllegalAccessException abc){
        	System.err.println(""+abc.getClass()+"\n"+abc.getLocalizedMessage());
        	System.exit(0);
        } catch (InstantiationException ie){
        	System.err.println(""+ie.getClass()+"\n"+ie.getMessage());
        	System.exit(0);
        }
    }
   
   boolean ehConsulta(String a){
	   if (a.startsWith("insert") || a.startsWith("update ") || a.startsWith("delete ")) {
		   //JOptionPane.showMessageDialog(null, "retorna false (update)"+"\n"+a);
		   return false;
	   } else if (a.startsWith("select")){
		   	//JOptionPane.showMessageDialog(null, "retorna true (query) "+"\n"+a);
	   		return true;
	   }
	   return true;
   }

    public static void main(String args[]) {
        new Conexao().show();
    }
}

maxcool is offline   Reply With Quote
shogun
Trooper
 

16-02-06, 13:55 #40
Esse seu ehConsulta() não deveria ser case sensitive.
Se fazer uma query usando letras maiusculas ele sempre vai retornar true.

shogun is offline   Reply With Quote
un4
inativo
 

16-02-06, 14:07 #41
usa PreparedStatement em vez de escrever essas porquice na mão

un4 is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 14:08 #42
eu sei
eu to fazendo só pra EU aprender, nao vo ficar fazendo criticas d+, eh soh pra aprender

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 14:09 #43
Quote:
Postado por un4
usa PreparedStatement em vez de escrever essas porquice na mão
wtf's PreparedStatement?

maxcool is offline   Reply With Quote
Bombastic
The Alpha Male
 

16-02-06, 14:31 #44
Quote:
Postado por un4
usa PreparedStatement em vez de escrever essas porquice na mão
vai complicar pra que?

Bombastic is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 15:08 #45
o que eu uso pra gerar relatorios?
quero algo extremely izi

maxcool is offline   Reply With Quote
Oni
Trooper
 

16-02-06, 15:12 #46
Quote:
Postado por maxcool
wtf's PreparedStatement?
em vez de vc fazer uma query com os valores vc enche a query de '?' , depois passa os objetos pra cada '?' e o java que se vire pra formatar

Code:
   PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
                                     SET SALARY = ? WHERE ID = ?");
   pstmt.setBigDecimal(1, 153833.00)
   pstmt.setInt(2, 110592)
bom pra fazer query/update com Date e não ficar concatenando monte de .toString()


Last edited by Oni; 16-02-06 at 15:20..
Oni is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 15:20 #47
Oni, onde tem plugin pra awt/swing preu socar no eclipse?

maxcool is offline   Reply With Quote
Oni
Trooper
 

16-02-06, 15:24 #48
http://www.eclipse.org/vep/WebContent/main.php

já ouviu falar, mas nunca usei...

Oni is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 15:44 #49
instalei mas nao to vendo nada new

maxcool is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 15:54 #51
porra, nao consigo instalar o plugin... deszipei na pasta certa, mas...

maxcool is offline   Reply With Quote
Oni
Trooper
 

16-02-06, 15:56 #52
precisa de outros plugins de dependencia e dar -clean ao reiniciar

Oni is offline   Reply With Quote
maxcool
Banned
 

PSN ID: atcasanova
16-02-06, 16:10 #53
fiz tudo certinho e nao deu =\
q merda!

maxcool is offline   Reply With Quote
Responder


Regras de postagem
Você não pode criar novos tópicos
Você não pode postar
Você não pode enviar anexos
Você não pode editar seus posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Atalho para Fóruns



O formato de hora é GMT -3. horário: 03:21.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.