DUDA PL\SQL

bLaCkH0Le

hola! estoy haciendo un prodecimiento pl sql y e visualizado unas tuplas de un cursor y tal que e esho peor ahora lo que necesito es modificar algunos valores de la tabla.

¿como se utiliza el UPDATE? haber si me podeis pasar un ejemplito de la estructura del update. basicamente lo k kiero es aumentarle un valor pasado pro parametro a una variable.

E

Copy & Paste del manual CTSQL:

UPDATE tabla SET columna = expresión
[, columna = expresión] [,…]
[WHERE {condicion_comparación | condición_subselect} ]

Ejemplo 1:

update articulos set pr_vent = pr_vent * 1.05;

Esta instrucción actualiza todos los artículos incluidos en la tabla «articulos», incrementando el precio de venta («pr_vent») en un cinco por ciento.

Ejemplo 2:

update articulos set pr_vent = pr_vent * 1.05
where pr_cost >= 10000;

Esta instrucción incrementará los precios de venta de aquellos artículos de la tabla «articulos» cuyo precio de coste («pr_cost») sea superior o igual a 10.000.

Ejemplo 3:

update clientes set total_factura = (select sum((cantidad * precio) * (1 - (descuento / 100)))
from albaranes, lineas
where albaranes.cliente = 4
and albaranes.albaran = lineas.albaran)
where clientes.cliente = 4

Esta instrucción actualizará el total facturado al cliente cuyo código es el «4» en su ficha de la tabla «clientes». En este caso, como «expresión» de la instrucción UPDATE se utiliza la tabla derivada de una instrucción SELECT. Esta instrucción SELECT tiene que devolver obligatoriamente una sola fila, como es el caso de nuestro ejemplo.

Entiendo que de la 1º y la 2º a la 3ª haya un abismo si no has visto nunca una update, pero que quieres que le haga... los copy&paste son así. Si tienes dudas, pregúntame que de SQL se un rato...

Usuarios habituales

  • ElTutor
  • bLaCkH0Le