Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Insertar y modificar al mismo tiempo ! (https://www.clubdelphi.com/foros/showthread.php?t=60007)

hecospina 17-09-2008 00:01:02

Insertar y modificar al mismo tiempo !
 
Hola amigos del foro

Trabajo con FireBird 2.0 y quiero saber si existe una instruccion sql que me permita insertar registros a una tabla pero si la llave primaria esta duplicada me modifique la informacion original, por la que tiene el registro que se esta insertando


ejemplo
tabla clientes

PK
codigo----nombre-----------direccion
01--------juan--------------cr 23 5-23
02--------pedro-------------av 18 7-34
03--------maria-------------null u otro valor

realizo un insert con los siguiente valores
03--------maria-------------edif la hacienda of 203

necesito que la tabla me quede con los siguientes datos

codigo----nombre-----------direccion
01--------juan--------------cr 23 5-23
02--------pedro-------------av 18 7-34
03--------maria-------------edif la hacienda of 203

si se puede hacer directamente desde sql ? :confused:
Gracias

jhonny 17-09-2008 00:10:36

Con Firebird 2.1 puedes hacerlo gracias a la clausula Update or Insert, de hecho en mi blog hablo al respecto... en un de los articulos.

AzidRain 17-09-2008 00:25:23

No uso Fb por el momento, pero en MySQL hay una adición al comando update o insert en donde se le especifica que hacer en caso de claves inválidas, supongo que algo ha de haber en FB similar

hecospina 17-09-2008 01:49:50

AzadRain, jhonny
muchas gracias por sus respuestas.

jhonny ya visite tu blog y esta muy detallado, tendre que migrar a firebird 2.1

jhonny 17-09-2008 13:40:28

Cita:

Empezado por hecospina (Mensaje 314522)
jhonny ya visite tu blog y esta muy detallado, tendre que migrar a firebird 2.1

Que bien, desde hace tiempo he estado trabajando con FB 2.1 y me ha parecido la mejor versión estable que ha lanzado Firebird hasta el momento. :)


La franja horaria es GMT +2. Ahora son las 16:17:14.

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