CRUD actores con jdbc

package com.trifulcas.datos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Scanner;

public class MantenimientoActores {
	public static void main(String[] args) {

		try {

			Class.forName("com.mysql.cj.jdbc.Driver");
			Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sakila", "root", "");
			System.out.println("Conexión correcta");

			Scanner in = new Scanner(System.in);
			int res = 0;
			do {
				System.out.println(
						"1.- Buscar actores\n2.- Añadir actores\n3.- Modificar actores\n4.- Eliminar\n0.- Salir");
				res = in.nextInt();
				String sql, nombre, apellido;
				int actor_id;
				PreparedStatement ps;
				switch (res) {
				case 1:
					System.out.println("Buscar actores");

					System.out.println("Dime una parte el apellido");
					String cad = in.next();
					sql = "select * from actor where last_name like ?";
					// Creo mi sentencia preparada. Tiene 1 parámetro
					ps = con.prepareStatement(sql);
					ps.setString(1, "%" + cad + "%");
					ResultSet rs = ps.executeQuery();
					while (rs.next()) {
						System.out.println(rs.getString("first_name") + " " + rs.getString("last_name"));
					}

					break;
				case 2:
					System.out.println("Añadir actores");
					System.out.println("Dime el nombre");
					nombre = in.next();
					System.out.println("Dime el apellido");
					apellido = in.next();

					sql = "insert into actor(first_name,last_name) values (?,?)";
					ps = con.prepareStatement(sql);
					ps.setString(1, nombre);
					ps.setString(2, apellido);
					if (ps.executeUpdate() == 1) {
						System.out.println("Registro insertado");
					} else {
						System.out.println("No se ha insertado el registro");
					}

					break;
				case 3:
					System.out.println("Modificar actores");
					System.out.println("Dime el id del actor que quieres modificar");
					actor_id = in.nextInt();
					System.out.println("Dime el nombre");
					nombre = in.next();
					System.out.println("Dime el apellido");
					apellido = in.next();

					sql = "update actor set first_name=?, last_name=? where actor_id=?";
					ps = con.prepareStatement(sql);
					ps.setString(1, nombre);
					ps.setString(2, apellido);
					ps.setInt(3, actor_id);
					if (ps.executeUpdate() == 1) {
						System.out.println("Registro modificado");
					} else {
						System.out.println("No se ha modificado el registro");
					}
					break;
				case 4:
					System.out.println("Eliminar actores");
					System.out.println("Dime el id del actor que quieres eliminar");
					actor_id = in.nextInt();
					sql = "delete from actor where actor_id=?";
					ps = con.prepareStatement(sql);
					ps.setInt(1, actor_id);
					if (ps.executeUpdate() == 1) {
						System.out.println("Registro eliminado");
					} else {
						System.out.println("No se ha eliminado el registro");
					}
					break;
				}
			} while (res != 0);

			con.close();

		} catch (Exception ex) {

			System.out.println(ex);
		}
	}
}

Publicado por

Avatar del usuario

Juan Pablo Fuentes

Formador de programación y bases de datos