Foros del Web » Programación para mayores de 30 ;) » Java »

Java por consola (código no funciona)

Estas en el tema de Java por consola (código no funciona) en el foro de Java en Foros del Web. Gente: Estoy tratando de tirar excepciones por consola y no me da la cosa. Me explico: al intentar ingresar un RUT que no exista en ...
  #1 (permalink)  
Antiguo 07/10/2011, 08:49
 
Fecha de Ingreso: septiembre-2011
Mensajes: 40
Antigüedad: 13 años, 2 meses
Puntos: 0
Pregunta Java por consola (código no funciona)

Gente:

Estoy tratando de tirar excepciones por consola y no me da la cosa.

Me explico:

al intentar ingresar un RUT que no exista en la base de datos (trabajo en una clase que llama a un procedimiento almacenado), me debe de decir que la cosa no pudo ser eliminada (estoy borrando por rut)

Acá dejo el código:


System.out.println("Ingrese el RUT: ");
String rut = sc.next();
if(rut!= null) {


cstmt.setString(1,rut);


cstmt.execute();
System.out.println("***Llamada a Procedimiento Almacenado****");
System.out.println("Persona eliminada con Exito");
con.close();
}

else
{
System.out.println("EL RUT NO EXISTE");
}


Al final todo me pasa de largo, no me detiene los RUT que no existan en la base de datos.

Dejo la clase completa por si acaso:



import java.sql.*;
import java.util.*;
import java.io.*;

import Carga.Inicio;
import Carga.MenuPrueba;

public class ProcedimBorrar {
private Connection Conexion;
private CallableStatement cstmt = null ;

public ProcedimBorrar(Connection Con) {

Conexion = Con;
}

public static void Borra() throws Exception
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLSer verDriver");
Connection con=DriverManager.getConnection("jdbc:sqlserver://MARTE:1433;DatabaseName=Prueba", "sa", "gsiinformatica");


CallableStatement cstmt = con.prepareCall("{call ProcedAlmac_BorraPersona(?)}");
Scanner sc=new Scanner(System.in);

Scanner consola = new Scanner(System.in);
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
int opcion = 0;
String seleccion = "";


System.out.println("Ingrese el RUT: ");
String rut = sc.next();
if(rut!= null) {


cstmt.setString(1,rut);


cstmt.execute();
System.out.println("***Llamada a Procedimiento Almacenado****");
System.out.println("Persona eliminada con Exito");
con.close();
}

else
{
System.out.println("EL RUT NO EXISTE");
}


try{
do{
System.out.println("");
System.out.println("Desea seguir borrando weones?");

System.out.println("");
System.out.println(" Seleccione la opcion que desee: ");
opcion = consola.nextInt();

switch (opcion) {
case 1:
System.out.println("Opcion 1: Seguir");
System.out.println("");
ProcedimBorrar.Borra();
break;
case 2:
System.out.println("Opcion 2: Salir");
System.out.println("");
System.out.println("\nHasta Pronto!!!");
System.exit(2);
break;
default:
System.out.println("Seleccion no valida");
System.out.print("Pulse S si desea continuar o cualquier tecla y luego ENTER para salir: ");
seleccion = stdin.readLine();
}

} while (seleccion.equals("s"));
System.out.println("\nHasta Pronto!!!");
System.exit(4);

}catch(java.util.InputMismatchException ex){
System.out.println ("La entrada debe ser numérica.");
System.exit(4);
}

}

}

Etiquetas: procedimiento_almacenado, sonsola
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:52.