Olá pessoal,
Nem vou falar que sou novato em Java pois essa deve ser uma das dúvidas mais básicas.
Bem, quero fazer um programa que insere e lê dados em um tabela no postgresql. Bem eu até consigui ler, mas ele so funciona se eu rodar pelo Eclipse.
Se rodar pelo shell, aparece a seguinte mensagem:
Meu código:
import java.sql.*;
import java.util.*;
public class teste {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
boolean controle = true;
int op = 0;
Scanner scan = new Scanner (System.in);
while(controle){
System.out.println("Teste conexão Java e PostgreSQL\n-------------------------------");
System.out.println("Escolha uma opção:");
System.out.println("1 - Visualizar dados");
System.out.println("2 - Inserir dados");
System.out.println("9 - Sair");
System.out.print("Opção: ");
op = scan.nextInt(); scan.nextLine();
if(op==1){
leTabela();
}else if(op==2){
System.out.println("Tô fazendo...");
}else if((op>2)&&(op!=9)){
System.out.println("Opção inválida!!");
}else if(op==9){
controle=false;
System.out.println("Tchau...");
}
}
}
public static void leTabela(){
Connection con = null;
//Class.forName("org.postgresql.Driver");
Scanner scan = new Scanner (System.in);
try{
con = DriverManager.getConnection("jdbc:postgresql://localhost:5432/dbtese","postgres","abdsys");
Statement stm = con.createStatement();
String sql = "SELECT cod_pv, marca, nserie, instalada_em " +
"FROM tbmaquinas";
ResultSet rs = stm.executeQuery(sql);
System.out.println("Cod Pv, Marca, Nro de Serie, Instalada em");
while(rs.next()){
System.out.println(rs.getString("cod_pv") + ", " + rs.getString("marca") + ", " +
", " + rs.getString("nserie") + ", " + rs.getString("instalada_em") );
}
scan.nextLine();
}
catch (SQLException e){
e.printStackTrace();
}
finally{
try{
con.close();
}
catch(SQLException onConClose){
System.out.println("Erro no fechamento da conexão");
onConClose.printStackTrace();
}
}
}
}
Bem se ajudar eu to usando Ubuntu 9.
Obrigado pela ajuda!!
rock.it