Complete o Exercício Proposta Anteriormente de Conexão
Por: galvezgg • 5/11/2016 • Artigo • 1.529 Palavras (7 Páginas) • 186 Visualizações
-
Complete o exercício proposta anteriormente de conexão, incluindo um menu de opções, conforme figura a seguir: [pic 1] Perceba que na opção Inserir, sempre será incluído um novo registro, pois a chave primária da tabela filme (código) é um atributo AUTO-INCREMENT, ou seja, sempre será acrescido de um. Nas opções Alterar e Excluir, sempre será executado no registro que possui código 1. Pense na possibilidade de quando executar essas duas opções, solicitar o número do código que se deseja alterar ou excluir. | A classe principal que executa o programa teve o nome alterado para MenuPrincipal. [pic 2][pic 3] |
package insercaodados;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class MySQLNativeDrive {
protected String nomeBanco;
protected String usuario;
protected String senha;
private String ip, porta;
private void setarValores(String nomeBanco, String usuario, String senha, String ip, String porta) {
this.nomeBanco = nomeBanco;
this.usuario = usuario;
this.senha = senha;
this.ip = ip;
this.porta = porta;
}
public MySQLNativeDrive(String nomeBanco, String usuario, String senha, String ip, String porta){
this.setarValores(nomeBanco, usuario, senha, ip, porta);
}
public MySQLNativeDrive(String nomeBanco, String usuario, String senha){
this.setarValores(nomeBanco, usuario, senha, "localhost", "3306");
}
public Connection obterConexao() {
Connection conexao = null;
try {
String url;
url = "jdbc:mysql://"+this.ip+":"+this.porta+"/"+this.nomeBanco;
Class.forName("com.mysql.jdbc.Driver");
conexao = DriverManager.getConnection(url, this.usuario, this.senha);
System.out.println("Conexão executada com sucesso");
} catch(ClassNotFoundException erro){
System.out.println("Classe ODBC não existe");
} catch(SQLException erro) {
System.out.println("SQL inválido");
} finally {
return conexao;
}
}
}
package insercaodados;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
public class MenuPrincipal {
public static void main(String[] args) {
iniciar();
}
public static void insertDados() {
Connection conexao;
MySQLNativeDrive driver = new MySQLNativeDrive("escola", "root", "");
conexao = driver.obterConexao();
String sql = "INSERT INTO filme(nome,genero,produtora,data_compra) values(?,?,?,?);";
PreparedStatement pStmt;
try{
pStmt = conexao.prepareStatement(sql);
pStmt.setString(1, "Jogos Mortais");
pStmt.setString(2, "Terror");
pStmt.setString(3, "Sony");
pStmt.setString(4, "2005-12-23");
pStmt.executeUpdate();
System.out.println("Dados inseridos com sucesso");
}catch (SQLException ex) {
System.out.println("erro na inserção dos dados (" + ex.getMessage() + ")");
}
}
public static void alteracaoDados() {
Connection conexao;
MySQLNativeDrive driver = new MySQLNativeDrive("escola", "root", "");
conexao = driver.obterConexao();
String sql = "UPDATE filme SET "
+ " nome=?,genero=?,produtora=?, "
+ "data_compra=? WHERE codigo=?";
PreparedStatement pStmt;
try{
pStmt = conexao.prepareStatement(sql);
pStmt.setString(1, "Novo Nome");
pStmt.setString(2, "Novo Genero");
pStmt.setString(3, "Nova Produtora");
...