2013-01-12 38 views
0

我在我的項目中遇到了mysql問題。 我認爲這是錯誤的東西在這裏不是唯一表/別名:在查詢中Java程序

rs = bd.consultar(
     "SELECT mensagens.assunto as 'Assunto', mensagens.texto as 'texto', usuarios.username as 'Para', mensagens.data_hora as 'Hora Data' " 
     + "FROM mensagens, usuarios" 
     + "WHERE mensagens.para = usuarios.idusuarios and mensagens.de = " + Login.getUsuarioAtual().getId() + ";"); 

     while (rs.next()) { 
     mensagemTemp = new Mensagem(rs.getString("Assunto"), rs.getString("texto"), 
       Login.getUsuarioAtual().getUsername(), rs.getString("Para"), rs.getDate("Hora Data")); 

     enviadas.add(mensagemTemp); 
    } 

這裏是埃羅:

 
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Not unique table/alias: 'mensagens' 
    ... 
    at Banco_de_Dados.BancoDeDados.consultar(BancoDeDados.java:29) 
     at Banco_de_Dados.BancoMensagem.mensagensEnviadas(BancoMensagem.java:93) 
     at GUI.Mensagens.MensagensRecebidas.initComponents(MensagensRecebidas.java:101) 
     at GUI.Mensagens.MensagensRecebidas.(MensagensRecebidas.java:27) 
     at GUI.Login.jBentrarActionPerformed(Login.java:230) 
     at GUI.Login.access$200(Login.java:20) 
     at GUI.Login$3.actionPerformed(Login.java:171) 
    ... 

我已經做了與Java代碼查詢在MySQL中,我它的工作原理。 有人可以看到錯誤嗎?

對不起我的英語

+0

嗷嗷,我只是忘了空間 +後「 FROM mensagens,usuarios「 查詢中, 對不起打擾 – wviana

+1

既然您已經自己解決了您的問題,您可以將解決方案作爲答案發布(以便其他具有相同問題的人可能從中受益)你的解決方案),或者只是刪除你的問題(如果你不認爲這個解決方案可能會使其他人受益)。 – ruakh

回答

1

嗷嗷,我只是忘+後空間 「FROM mensagens,USUARIOS」 查詢,對不起打擾

+0

這不回答問題。 – Robert

0
SELECT m.Assunto 
    , m.Texto 
    , u.username Para 
    , m.data_hora `Hora Data` 
    FROM mensagens m 
    JOIN usuarios u 
    ON u.idusuarios = m.username 
WHERE m.de = Login.getUsuarioAtual().getId(); 
相關問題