Criando uma conexão através do Driver ODBC
import java.sql.*;
public class simpleConnection {
public static void main(String args[]) {
try {
//Registrando o driver:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
//Estabelecendo a conexão através do ODBC criado no Painel de Controle:
Connection con = DriverManager.getConnection("jdbc:odbc:Inventory","","");
//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados
Statement stmt = con.createStatement();
//Executando SQL:
stmt.execute("SELECT * FROM objects");
//Adquirindo através de um objeto ResulSet, os registros retornados pela SQL:
ResultSet results = stmt.getResultSet();
//Fechando a conexão:
con.close();
} catch(Exception e) {
System.out.println(e);
}
}
}Tutoriais Admin
Curtidas 0
Respostas
Joaotacio
09/04/2009
este tutorial me ajudou muito, porem ao executar uma consuilta mais avançada esta gerando erro.
a consulta seria a seguinte, supondo que eu tenho duas tabelas, pessoas e cursos, cursos tem uma chave estrageira herdada de pessoas.
caso eu desejar saber todas os cursos de uma pessoa:
SELECT P.NOME, C.CURSO
FROM PASSOAS AS P, CURSOS AS C
WHERE P.CODIGO=C.DODIGO
esta consulta sempre gera um erro. Muito obrigado!
GOSTEI 0
Lucas Teixeira
09/04/2009
[quote="joaotacio"]este tutorial me ajudou muito, porem ao executar uma consuilta mais avançada esta gerando erro.
a consulta seria a seguinte, supondo que eu tenho duas tabelas, pessoas e cursos, cursos tem uma chave estrageira herdada de pessoas.
caso eu desejar saber todas os cursos de uma pessoa:
SELECT P.NOME, C.CURSO
FROM PASSOAS AS P, CURSOS AS C
WHERE P.CODIGO=C.DODIGO
esta consulta sempre gera um erro. Muito obrigado!
Qual erro está sendo gerado??
Qual seu Banco de dados?
GOSTEI 0
Joaotacio
09/04/2009
o tutorial no topo da pagina esta funcionando perfeitamente, consegui executar consultas concatenando tabelas, porem nao consigo mostrar a consulta.
meu codigo e:
O erro que esta sendo gerado é:
java.sql.SQLException: Column not found
o ocorre ao mostrar na tela o conteudo, caso eu mostrar apenas nome como abaixo da certo:
porem so é retornado nome dos professores. Como faço para mostrar o nome do departamento?
Muito obrigado, Feliz Pascoa pra todos!
try {
//Registrando o driver:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
//Estabelecendo a conexão através do ODBC criado no Painel de Controle:
Connection con = DriverManager.getConnection("jdbc:odbc:Academico","","");
//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados
Statement st = con.createStatement();
//Executando SQL:
String s = "SELECT p.NOME, d.nome FROM PROFESSORES as p, DEPARTAMENTO as d where p.COD_DEPT=d.codigo";
ResultSet rs = st.executeQuery(s);
while (rs.next()){
System.out.println(rs.getString("p.NOME") + "-" + rs.getString("d.NOME"));
}
//Fechando a conexão:
con.close();
} catch(Exception e) {
System.out.println(e);
} while (rs.next()){
System.out.println(rs.getString("NOME"));
}GOSTEI 0
Lucas Teixeira
09/04/2009
[quote="joaotacio"]o tutorial no topo da pagina esta funcionando perfeitamente, consegui executar consultas concatenando tabelas, porem nao consigo mostrar a consulta.
meu codigo e:
try {
//Registrando o driver:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
//Estabelecendo a conexão através do ODBC criado no Painel de Controle:
Connection con = DriverManager.getConnection("jdbc:odbc:Academico","","");
//Criando um objeto Statement para enviar requisições SQL para o Banco de Dados
Statement st = con.createStatement();
//Executando SQL:
String s = "SELECT p.NOME, d.nome FROM PROFESSORES as p, DEPARTAMENTO as d where p.COD_DEPT=d.codigo";
ResultSet rs = st.executeQuery(s);
while (rs.next()){
System.out.println(rs.getString("p.NOME") + "-" + rs.getString("d.NOME"));
}
//Fechando a conexão:
con.close();
} catch(Exception e) {
System.out.println(e);
}
O erro que esta sendo gerado é:
java.sql.SQLException: Column not found
o ocorre ao mostrar na tela o conteudo, caso eu mostrar apenas nome como abaixo da certo:
while (rs.next()){
System.out.println(rs.getString("NOME"));
}
porem so é retornado nome dos professores. Como faço para mostrar o nome do departamento?
Muito obrigado, Feliz Pascoa pra todos!
O erro que esta sendo gerado é:
java.sql.SQLException: Column not found
traduzindo:
"Coluna não encontrada"
:!:
Verifique o nome da coluna, lembre-se que dependendo do banco, 'COLUNA' é diferente de 'coluna'
:!:
GOSTEI 0
Joaotacio
09/04/2009
Muito grato pela ajuda,
estou utilizando o numero ao invez de nomes
while (rs.next()){
System.out.println(rs.getString(1));
}
GOSTEI 0
Gustavo Valerio
09/04/2009
tentar no select fazer isso -> SELECT p.NOME as nomeProf, d.nome as nomeDep FROM PROFESSORES as p, DEPARTAMENTO as d where p.COD_DEPT=d.codigo
obs: há 2 colunas com mesmo nome :)
while (rs.next()){
System.out.println(rs.getString("nomeProf"));
System.out.println(rs.getString("nomeDep"));
}
GOSTEI 0
Leonardo Oliveira
09/04/2009
legal!!!
GOSTEI 0
Eduardo Pessoa
09/04/2009
funciona com qualquer banco?
GOSTEI 0