我的项目中遇到mysql问题。 我觉得这里有点不对劲
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);
}
这是Erro:
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) ...
我在mysql中用java代码完成了查询,我的工作正常。 有人可以看错了吗?
抱歉我的英文
答案 0 :(得分:1)
ow,我刚忘了一个空格+“来自menagens,usuarios”的查询,对不起打扰
答案 1 :(得分: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();