Como decía en el asunto: Consulta a MySql desde JAVA a dos tablas con un conflicto de nombre en las columnas. Ahora mismo estoy haciendo la llamadoa a las dos tablas y funciona, pero el resultado no es el deseado, porque repite los datos de la primera tabla en vez de diferenciar los datos de las dos tablas.
Os paso mi código a ver si alguién me puede dar un poco de luz.
Código:
<%@ page import="java.sql.*" %><%@ page import="java.io.*" %><%@ page import="com.mysql.*" %><?xml version="1.0"?> <etiqueta> <% Connection connection = null; Statement statement = null; ResultSet result = null; try { Class.forName("com.mysql.jdbc.Driver").newInstance(); connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/directori", "root","root"); statement = connection.createStatement(); String s = "select departament.nom, despatx.nom, despatx.extensio from departament, despatx"; result = statement.executeQuery(s); while(result.next()) { %> <directori> <nom> <% out.print(result.getString("nom")); %>: <descripcio><% out.print(result.getString("nom")); %></descripcio> <descripcio><% out.print(result.getString("extensio")); %></descripcio> </nom> </directori><br/> <% } } catch(SQLException e) { out.println("error connecting to database"); } %> </etiqueta>
En el resultado ahora, obviamente se repite el resultado de las dos primeras peticiones.
Estoy intentando hacer pruebas con WHERE del siguiente modo y sin éxito...
Código:
La segunda tabla tiene una columna (codi_departament) que hace referencia a la llave primaria de la primera (codi), //String s = "select despatx.nom, codi_departament.nom from despatx, departament where codi_departament = codi";
Les estaria muy agradecidos si me echan un cable
Un saludo,