Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Ejercicio PLSQL

Estas en el tema de Ejercicio PLSQL en el foro de Oracle en Foros del Web. Quisiera que me ayuden con este ejercicio de PLSQL porque estoy un poco estancado y nose seguir.Este es el ejercicio: Base de datos de la ...
  #1 (permalink)  
Antiguo 01/09/2012, 13:26
 
Fecha de Ingreso: septiembre-2012
Ubicación: España
Mensajes: 3
Antigüedad: 12 años, 3 meses
Puntos: 0
Pregunta Ejercicio PLSQL

Quisiera que me ayuden con este ejercicio de PLSQL porque estoy un poco estancado y nose seguir.Este es el ejercicio:


Base de datos de la empresa “SNP CEU”, que se va a dedicar a la gestión de venta y compra de productos financieros. La base de todo es que los productos se compran y se venden. Todos tienen un precio de compra y otro de venta, si se compran más baratos que se venden el cliente ganará dinero, de igual forma si se venden más caros y luego se compran más baratos, también se ganará. Para simplificar la tarea vamos a suponer que las operaciones se hacen o deshacen en bloques, es decir, si compro 100, luego vendo 100, y no puedo vender 34. De cada producto financiero se tienen los siguientes datos:
• ID.
• Nombre. El nombre del producto, por ejemplo IBEX35 o Telefónica.
• Tipo. Si es un índice, divisa, acción, etc.
• Precio de venta.
• Precio de compra.
• Apalancamiento. Es la cantidad que necesitamos depositar en garantía. Por ejemplo, si el apalancamiento es de 1/40, y el cliente invierte 400€, únicamente deberemos restar 10€ de su saldo (garantía).

Obviamente también necesitamos guardar información sobre los clientes:
• ID. Será el correo electrónico.
• Nombre. Nombre completo.
• Dirección. Dirección postal.
• Saldo. Es el dinero que tiene para invertir.
Sus operaciones:
• ID_Cliente.
• ID_Producto
• Fecha y hora en que realizó la operación.
• Unidades compradas/vendidas.
• Precio al que se compra/vende.
• Tipo. Compra o venta.
Y su cartera:
• ID_Cliente.
• ID_Producto.
• Cantidad. La cantidad de unidades de ese producto que tiene. Puede ser un número positivo o negativo (si ha realizado una venta y está esperando para comprar).

Todos estos datos se pueden guardar en cuatro tablas.
Necesitaríamos un paquete PL/SQL que facilitara en alguna medida la gestión de esta base de datos. Debería desarrollarse al menos lo siguiente:
• Función Comprar. Se le pasa como parámetro el ID del cliente, del producto y la cantidad, y debe realizar la operación siempre que sea posible. La cantidad viene expresada en unidades (acciones, divisas, etc). Devuelve cierto o falso dependiendo de si se hace o no la operación. Realizar la compra conlleva:
o Comprobar la cartera del cliente. Si tiene una cantidad negativa o positiva, lo que se hace es sumar la cantidad a esta. Si no tiene ninguna, se crea un nuevo registro con esa cantidad.
o En el caso de tener una cantidad negativa, buscar la última venta del cliente, con la que se abrió la operación, sumar al saldo del cliente la garantía y comparando precio de venta y compra, aumentar también su saldo.
o En el caso de no tener antes este producto, insertar la operación correspondiente en la tabla de operaciones y el producto en la cartera, quitar del saldo del cliente la garantía correspondiente, teniendo en cuenta el precio de compra y el apalancamiento.
• Función Vender. Funciona de forma parecida, pasándole el ID del cliente y del producto. Devuelve cierto si se realizó la venta y falso si no.
  #2 (permalink)  
Antiguo 01/09/2012, 13:31
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Ejercicio PLSQL

Muy bonito, pero... no somos una software factory, sino un foro colaborativo.
Postea lo que has intentado y explica qué problemas te plantea. VEremos cómo guiarte en la solución.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 01/09/2012, 13:34
 
Fecha de Ingreso: septiembre-2012
Ubicación: España
Mensajes: 3
Antigüedad: 12 años, 3 meses
Puntos: 0
Pregunta Respuesta: Ejercicio PLSQL

No era mi intencion, solo queria una pequeña ayuda o solucion... El problema esque no entiendo muy bien la segunda parte del enunciado...Al crear el paquete PLSQL con las funciones de comprar y vender... Tengo idea de como podria ser, pero no se desarrollarlo!
  #4 (permalink)  
Antiguo 02/09/2012, 09:32
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Ejercicio PLSQL

Perdón el retraso, pero ¿es cómo se crean los Packages y dentro de ellos las Funciotns y Stored Procedures lo que no sabes hacer?
Es una parte bien específica de Oracle de la cual hay innumerables ejemplos, manuales y tutoriales. Es muy importante porque toda aplicación bien diseñada usa packages para acceder a la capa de datos, por lo que conocerla es fundamental.

¿Es esa parte la que no conoces?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: ejercicio, fecha, plsql, sql, tabla, formulario
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 21:00.