Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-09-2004
davidgaldo davidgaldo is offline
Miembro
 
Registrado: nov 2003
Posts: 220
Poder: 21
davidgaldo Va por buen camino
nuevo registro en tabla de sqlserver

Al insertar un nuevo registro en una tabla como puedo controlar antes de insertarlo de que no existe ya uno igual para no duplicarlo??
Responder Con Cita
  #2  
Antiguo 23-09-2004
Avatar de Investment
Investment Investment is offline
Miembro
 
Registrado: may 2003
Posts: 378
Poder: 21
Investment Va por buen camino
Pues haciendo una select por los campos clave de la tabla con los valores que vas a insertar.

O controlando el error en un try/except/end
__________________
Saludos,
Peter Investment
Responder Con Cita
  #3  
Antiguo 23-09-2004
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 23
__hector Va por buen camino
... o creando un indice (o constraint) de no duplicidad en la base de datos (UNIQUE, por combinacion de campos si es necesario), intentar insertarlo, y meter el codigo en un bloque try/except.

Si no logra hacer la operacion, verificas que el error se deriva del intento de insertar un duplicado, y le avisas (si quieres) al usuario. Te evitas asi el select

EDITADO
No vi en el post anterior la parte del "o try/except", asi que creo que mi sugerencia puede ser solo una confirmacion de la anterior
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #4  
Antiguo 24-09-2004
davidgaldo davidgaldo is offline
Miembro
 
Registrado: nov 2003
Posts: 220
Poder: 21
davidgaldo Va por buen camino
me puedes explicar eso con un poco más de detalle, gracias.
Responder Con Cita
  #5  
Antiguo 24-09-2004
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 23
__hector Va por buen camino
Explicar que? Crear el indice? Desde el Enterprise manager, clic derecho sobre la tabla, design table, Table properties, indexes/keys, creas un nuevo indice, seleccionas los campos que no pueden duplicarse, y guardas.

La parte de delphi:

Código:
try
   ... codigo para insertar el registro
except
  ... mostrar la excepcion... no se de que clase es la excepcion que se generara, asi que tendras que probar
end;
Puedes ver en la ayuda de delphi si necesitas mas info.
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 07:20:28.


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