Estou tentando juntas 2 consultas de tabelas diferentes com colunas
totalmente diferentes e não consegui.
Já tentei
SELECT c.coluna1, c.coluna2, b.coluna1, b.coluna2 FROM colun1 as c, colun2 as b;
e não deu certo.
O que tenho que fazer?
Obrigado.
Estou tentando juntas 2 consultas de tabelas diferentes com colunas
totalmente diferentes e não consegui.
Já tentei
SELECT c.coluna1, c.coluna2, b.coluna1, b.coluna2 FROM colun1 as c, colun2 as b;
e não deu certo.
O que tenho que fazer?
Obrigado.
Usa JOINs…
SELECT
c.coluna1, c.coluna2, b.coluna1, b.coluna2
FROM
colun1 as c
JOIN colun2 as b
ON (c.coluna1 = b.coluna1)
Tenta aí…
PK da tabela X = FK da tabela Y:
SELECT a.campo1, a.campo2, a.campo3, b.campo1, b.campo2
FROM tabela1 a, tabela2 b
WHERE a.campoPK = b.campoFK
Isso deve te ajudar.
Abraços,
[quote=pimenta]PK da tabela X = FK da tabela Y:
SELECT a.campo1, a.campo2, a.campo3, b.campo1, b.campo2
FROM tabela1 a, tabela2 b
WHERE a.campoPK = b.campoFK
Isso deve te ajudar.
Abraços,[/quote]
Veja, eu já utilizei as maneiras propostas por vocês antes. Aliás já vi no IMasters mas só dá certo no próprio banco de dados…
A aplicação responde diferente, então acho que o erro é no retorno entre as tags JSP.
Vamos ao código:
[code]<%@page language=“java” import=“schema.conect001”%>
<%@page import=“java.sql.*”%>
<%
Connection conn = null;
ResultSet rs = null;
Statement stmt = null;
try {
stmt = conn.createStatement();
String sql = "SELECT b.introd, b.frase_introd, t.codTopic, "+
" t.titleTopic, t.conteudoTopic FROM banner as b, tableTopic as t;";
rs = stmt.executeQuery(sql);
rs.next();
%>[/code]
Este foi o código que utilizei pra “chamar” os dados das duas tabelas, reparem que dá certo no MySql e não na aplicação. (NullPointerException na aplicação_.
continuando:
[code]
<%
} catch(SQLException sqlex2) {
out.println("Erro:
"+sqlex2);
}
%>[/code]
Bom, gera NullPointerException desta maneira, então
gostaria de saber como realizar a múltipla consulta corretamente.
Obrigado.
se for EXATAMENTE esse código que vc postou, talvez falte atribuir uma conexão para o objeto conn :lol:
Desculpa me intrometer, não sei exatamente qual sua necessidade de fazer isso direto na JSP, mas não vale mais a pena você fazer isso numa classe e setar o atributo pra JSP? Assim você só trataria o objeto ResultSet.
E é possível que seja isso que o amigo de cima falou. Parece que você não está criando a conexão com o banco. Você pode tentar debugar com alguma IDE pra saber exatamente onde está o erro.
Abraços,
Opa, esqueci de postar a conexão.
eu importei a conexão sim, vejam:
<%@page language="java" import="schema.conect001"%>
<%@page import="java.sql.*"%>
aqui está ela:
[code]/*
package schema;
import java.sql.*;
public class conect001 {
public conect001() {
Connection conn = null;
try {
String driverName = "org.gjt.mm.mysql.Driver"; // também poderia ser com.mysql.jdbc.Driver
Class.forName(driverName);
String serverName = "localhost";
String mydatabase = "banco";
String url = "jdbc:mysql://" +serverName+ "/" +mydatabase;
String username = "user";
String password = "pass";
conn = java.sql.DriverManager. getConnection(url, username, password);
} catch(ClassNotFoundException cnfex) {
System.out.println(“Não foi possível encontrar o driver”+cnfex.toString());
} catch (java.sql.SQLException sqlex) {
System.out.println(“Erro ao conectar-se ao banco de dados”+sqlex.toString());
}
}
}[/code]
Olá a todos.
Passei aqui pra dizer que já resolvi o problema.
A tabela do segundo SELECT estava com campos nulos, ou seja, eu ainda não havia preenchido com dados.
O SELECT que eu havia postado resolveu após eu preencher manualmente a 2a tabela.
Da próxima vez vou atribuir valores default à todos os campos da tabela.
Obrigado pela ajuda. 
Em 2008 programando assim?