Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #10  
Antiguo 22-10-2020
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 947
Poder: 25
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Estimado adjunto sugerencias para tu proceso de actualización:
Código SQL [-]
--Opción 1: Sentencia SQL
update productos
set precio1= precio1 / :Tasa_Old * :Tasa_New,
    precio2= precio2 / :Tasa_Old * :Tasa_New,
    precio3= precio3 / :Tasa_Old * :Tasa_New,
    precio4= precio4 / :Tasa_Old * :Tasa_New,
    precio5= precio5 / :Tasa_Old * :Tasa_New,
    precio6= precio6 / :Tasa_Old * :Tasa_New;


--Opción 2: Sentencia SQL con filtro 
update productos
set precio1= precio1 / :Tasa_Old * :Tasa_New,
    precio2= precio2 / :Tasa_Old * :Tasa_New,
    precio3= precio3 / :Tasa_Old * :Tasa_New,
    precio4= precio4 / :Tasa_Old * :Tasa_New,
    precio5= precio5 / :Tasa_Old * :Tasa_New,
    precio6= precio6 / :Tasa_Old * :Tasa_New
where id_linea=:linea;



--Opción 3: Procedimiento almacenado con parámetros
create or alter procedure spUpdatePrecios ( Linea smallint,
                                            Tasa_Old numeric(6,2),
                                            Tasa_New numeric(6,2) )
as
begin
     if (Linea is null) then
        update productos
        set precio1= precio1 / :Tasa_Old * :Tasa_New,
            precio2= precio2 / :Tasa_Old * :Tasa_New,
            precio3= precio3 / :Tasa_Old * :Tasa_New,
            precio4= precio4 / :Tasa_Old * :Tasa_New,
            precio5= precio5 / :Tasa_Old * :Tasa_New,
            precio6= precio6 / :Tasa_Old * :Tasa_New,
     else
        --Update restringido de acuerdo a Linea=?
        update productos
        set precio1= precio1 / :Tasa_Old * :Tasa_New,
            precio2= precio2 / :Tasa_Old * :Tasa_New,
            precio3= precio3 / :Tasa_Old * :Tasa_New,
            precio4= precio4 / :Tasa_Old * :Tasa_New,
            precio5= precio5 / :Tasa_Old * :Tasa_New,
            precio6= precio6 / :Tasa_Old * :Tasa_New
        where id_linea=:linea;

end

Saludos cordiales
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con actualizacion de campo calculado rloayzal Conexión con bases de datos 9 18-12-2008 18:10:36
Actualizacion de un campo desde un trigger fedat Firebird e Interbase 2 14-11-2007 01:13:00
Actualización de campo Boolean PINO72 Firebird e Interbase 1 09-02-2005 21:28:21
Actualización de campo BLOB. mlara Firebird e Interbase 0 13-03-2004 18:10:35


La franja horaria es GMT +2. Ahora son las 06:06:41.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi