Bases de Datos - Bloque anónimo

 
Vista:

Bloque anónimo

Publicado por David (1 intervención) el 25/01/2019 14:39:13
Alguien tiene idea de ¿Cómo se hace?

Nos piden realizar un bloque anónimo para obtener el numero gandador de una lotería:



partiremos de una tabla llamada LOTERIA, que tendrá dos campos number (numero_secuencial y numero_aleatorio)



esta tabla la rellenaremos con un número secuencial 1,2,3... (del 1 al 1000) y en número aleatorio la rellenaremos con un numero aleatorio,

el numero aleatorio lo obtendremos con la función de Oracle TRUNC(DBMS_RANDOM.VALUE(0, 1000)). Esta función devuelve un valor aleatorio de 0 a 1000



El Bloque anónimo, tendrá una variable de sustitución, donde insertaremos un numero de 1 a 1000. Si el valor no está en este rango, debemos mostrar un mensaje: “error, el valor introducido no es correcto”.

Si el valor está en el rango correcto, buscaremos ese valor en la tabla Lotería por el campo Numero_secuencial, y mostraremos como numero ganador que es el valor almacenado en Numero_aleatorio. Indicaremos el mensaje. “EL GANADRO ES EL NUMERO ….”.



Mostramos un Ejemplo de la tabla. Si insertamos el valor 3 como variable de sustitución, tenemos que mostrar un mensaje diciendo EL GANADOR ES EL NUMERO 980.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 6
Ha disminuido su posición en 9 puestos en Bases de Datos (en relación al último mes)
Gráfica de Bases de Datos

Bloque anónimo

Publicado por raul (3 intervenciones) el 07/02/2019 14:18:04
por lo que interpreto esta seria tu consulta
select * from Tabla where id = TRUNC(DBMS_RANDOM.VALUE(0, 1000))

la función devolbera un numero en el rango y en la database existen los 1000 numeros o sea que usando el ID sabemos exactamente a quien se hace referencia

Luego en el programa (segun lenguage) usas una intrucción de mensage para mostrar el numero en pantalla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar