Oi!!!
Queria saber se existe algum programa que transforme um codigo escrito em java com consultas, exclusao, alteracao etc… em um codigo sql??? Tipo, eu acho mais facil fazer o codigo pra consultas, por exemplo, em java e fazer um SELECT pra procurar o que eu quero em um bd, mas o professor quer que todo o programa seja feito em um sgbd, com procedure, trigger, view, essas coisas… so que ta dificil!!! :shock: Sera que nao existe um programa que faça essa mudança??? Se alguem souber, help please!!! 
Java para Sql
5 Respostas
Bom… Por partes…
1 - Você poderia sugerir para seu professor alguma leitura sobre Hibernate…
2 - O porquê de se colocar a regra no BD e não na aplicação?
3 - Qual o banco de dados você está utilizando?
OBS: Até onde eu sei não existe ferramenta para o que você quer fazer.
Acho que respondendo as perguntas acima dá pra começar a te ajudar.
Fabio Nascimento
Oi Fabio!! Eu já desconfiava que nao existe este programa, só quis perguntar pra ter certeza, pois existem programas que ajudam a fazer tantas coisas que demorariam mais pra fazer a mao, que pensei em procurar um desses, mas acho que vou ter que fazer tudo a mão mesmo
.
Agora respondendo o que vc perguntou:
1 e 2- Ele quer que a aplicacao seja toda no BD, que só seja feita uma interface em qualquer linguagem só pra comunicacao com o usuario, mas todos as consultas, as exclusoes, atualizacoes, etc tem que ser feita toda no bd. Ele nao quer na aplicacao pq a cadeira é de Sistemas em BD e ele quer que em duas semanas a gente use toda a teoria que já vimos em um trbalho, :shock: virao muitas noites em claro por ai… :roll:
3- Estou usando o postgre.
Oi Fabio!! Eu já desconfiava que nao existe este programa, só quis perguntar pra ter certeza, pois existem programas que ajudam a fazer tantas coisas que demorariam mais pra fazer a mao, que pensei em procurar um desses, mas acho que vou ter que fazer tudo a mão mesmo.
Agora respondendo o que vc perguntou:
1 e 2- Ele quer que a aplicacao seja toda no BD, que só seja feita uma interface em qualquer linguagem só pra comunicacao com o usuario, mas todos as consultas, as exclusoes, atualizacoes, etc tem que ser feita toda no bd. Ele nao quer na aplicacao pq a cadeira é de Sistemas em BD e ele quer que em duas semanas a gente use toda a teoria que já vimos em um trbalho, :shock: virao muitas noites em claro por ai… :roll:
3- Estou usando o postgre.
Seguinte,
Vc te´ra que estudar por partes
1 - Como criar procedures ou triggers no postgre
2 - Procurar e instalar o driver correspondente ao postgre
3 - estudar como se codifica um acesso ao banco postgre pelo java
4 - estudar como se acessa um procedure e se recupera um possivel cursor e interar sobre ele.
Depois eu procuro alguma literatura a respeito pra te passar.
Abraços.
Bom dia Colegas !
Se eu entendi direito o que você deseja, acho dificil encontrar um aplicativo que faça isso.
Quando você diz que tudo deve estar no BD quer dizer que no lugar de ter uma classe DAO que faça:
public void apagaApartamento(int idApartamento){
try {
conn = ConnectionFactory.getInstance().getConnection();
stp = conn.prepareStatement("Delete from apartamento " +
"where ap_apIdApartamento = ?");
stp.setInt(1, idApartamento);
stp.executeUpdate();
conn.commit();
stp.close();
} catch (SQLException ex) {
try {
conn.rollback();
} catch (SQLException e) {
JOptionPane.showMessageDialog(null,"Falha na execução de rollback. Exclusão cancelada. \n" + e.getMessage()) ;
e.printStackTrace();
}
JOptionPane.showMessageDialog(null,"Falha na exclusão do registro. \n" + ex.getMessage()) ;
ex.printStackTrace();
}
}
}
Você teria algo como:
public void apagaApartamento(int idApartamento){
try {
conn = ConnectionFactory.getInstance().getConnection();
cstp = conn.prepareCall("excluirApartamento(?)");
cstp.setInt(1, idApartaemento);
cstp.executeUpdate();
cstp.close();
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null,"Falha na exclusão do registro. \n" + ex.getMessage()) ;
}
}
Obs.: Nunca usei CallableStatement provavelmente tenha algum erro de sintaxe.
Acho que teria que implementar mais alguma coisa, um retorno da proc excluirApartamento, para sinalizar se foi executada com sucesso ou não… e a parte do rollback e commit estaria dentro da proc, no BD.
[]s
É exatamente isso!!! Valeu pelas dicas Fabio!! E Zeed01 é isso mesmo o que terei que fazer, mas o meu´problema ta mais no banco mesmo, voce tem esse exemplo que voce colocou completo??? Se tiver, voce poderia enviar pra eu dar uma olhada??? O meu é sobre uma locadora de veiculos, nada a ver, mas eu poderia ter uma base de como fazer essas inserções,exclusões e etc. Por favor!!! 