Ir al contenido


Foto

Sobreescribir dato unique


  • Por favor identifícate para responder
2 respuestas en este tema

#1 elisu1986

elisu1986

    Newbie

  • Miembros
  • Pip
  • 1 mensajes

Escrito 16 octubre 2013 - 03:22

Hola a todos! Estoy realizando una aplicación en php que ingresa, modifica y muestra datos de una base de datos en postgresql. Añadir y mostrar datos ya lo tengo pero el problema es que quiero que cuando intenten insertar datos con una fecha ya existente se sobrescriba la información almacenada anteriormente con esa misma fecha. Sé que si utilizo la orden UPDATE me actualiza los datos, pero , ¿cómo hago para saber si ya existe la fecha seleccionada? No sé si me explico...Espero sus respuestas, gracias.
  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 16 octubre 2013 - 07:27

Podrías escribir un procedimiento almacenado en Postgres que reciba como parámetros los valores a insertar en la tabla. Allí podrás colocar la lógica para que en caso de existir la fecha actualice y no borre.

Aqui como hacer un procedimiento almacenado en postrgresql:

http://elpoli.delphi...-en-postgresql/
  • 0

#3 porfi.dev

porfi.dev

    Advanced Member

  • Miembros
  • PipPipPip
  • 183 mensajes
  • LocationMy House @ México

Escrito 17 octubre 2013 - 12:32

Apoyo lo que dice Poliburro!!

Otro camino es que yo  hago una consulta algo como:

SELECT fecha FROM tabla WHERE fecha = :midato;


y ya en PHP

comparas si la consulta te regreso un dato, si es asi. haces un IF

IF fecha = midato
    $sql = UPDATE tabla VALUES (...) Where fecha = midato
ELSE
    $sql = INSERT INTO table VALUES (...).



Lo se es pseudocodigo pero espero se entienda ;)
  • 0




IP.Board spam blocked by CleanTalk.