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 24-11-2005
Avatar de kakesoft
kakesoft kakesoft is offline
Miembro
 
Registrado: dic 2004
Ubicación: Cuba
Posts: 99
Poder: 20
kakesoft Va por buen camino
Thumbs up Campo de tabla con valores con un mismo nombre

Lo que quisiera hacer es sencillo, tengo una tabla que se llama Tabla1 y esa tabla tiene dos campos uno es Nombre y otro es Contraseña, en mi proyecto muestro un Form donde el visitante a mi aplicación puede crearse un nuevo usuario y quisiera saber cómo detectar si ya existe un usuario con el nombre Guille y entran otro con el mismo nombre entonces mostrar un mensaje diciendo o dando a conocer la existencia en la base de datos un usuario con ese nombre ya. No se si me entiendo lo que quisiera es que en el campo Usuarios no hallan dos valores insertados que coincidan. ok saludosss de antemano y graciassss
Responder Con Cita
  #2  
Antiguo 24-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Tienes 2 opciones:
1) Crear un indice primario (el campo "Nombre") y capturar la Exception al momento de querer insertar un valor duplicado.

2) Utilizar el metodo Locate* del dataset. if table1.locate(.....)

*Existe un ejemplo en la ayuda de delphi!!!
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #3  
Antiguo 24-11-2005
Avatar de kakesoft
kakesoft kakesoft is offline
Miembro
 
Registrado: dic 2004
Ubicación: Cuba
Posts: 99
Poder: 20
kakesoft Va por buen camino
Socio si está dentro de tus posibilidades me gustaría que me explicaras un poquito mejor sobre esta función para utilizarla en base a lo que quiero lograr, o sea, un ejemplito de código para yo ponerlo en práctica y decirte que tal o cómo me pincho ok, cuídate brother graciasss
Responder Con Cita
  #4  
Antiguo 24-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos

Disculpa que te lo diga, pero no puedo darte mas informacion aunque quiera, pues en la ayuda existe, y bastante clara. Aqui en el foro tambien existe mucha informacion y de calidad.
Pon un poquito de tu parte men
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #5  
Antiguo 24-11-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Opta por la opción (1) que te comentan. Es la más eficiente y segura y lo único que tienes que programar es la captura del error.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #6  
Antiguo 24-11-2005
Avatar de mazinger
mazinger mazinger is offline
Miembro
 
Registrado: jul 2004
Ubicación: Zamora
Posts: 85
Poder: 20
mazinger Va por buen camino
Sin embargo, el establecer limitaciones en la base de datos, tiene el problema de si tienes en algún momento que modificar la propia base de datos que tengan los clientes.
También puedes optar por examinar con un SQL la existencia del nombre concreto por ejemplo

SQL.Add('SELECT Nombre FROM Tabla1 Where Nombre = "Guille"');
Open;
If RecordCount>0 Then ShowMessage('Ya existe el nombre de usuario');
__________________
Visita mi página (en construcción):

http://mazinger.wordpress.com/
Responder Con Cita
  #7  
Antiguo 24-11-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por mazinger
Sin embargo, el establecer limitaciones en la base de datos, tiene el problema de si tienes en algún momento que modificar la propia base de datos que tengan los clientes.
Correcto, pero es que si no lo haces así tendrás una situación potencialmente peligrosa, ya que puedes estar pensando que el programa no va a dejar utilizar nombres duplicados, pero encambio la Base de Datos pueder ser que los tenga.
Entonces es como si no hicieras nada, porque estás programando una cosa, que luego no te puedes fiar de que se cumpla (por los registros antiguos). Así que considero que, lo hagas como lo hagas, debes modificar la Base de Datos igualmente, para dejarla coherente y correcta.

Cita:
Empezado por mazinger
También puedes optar por examinar con un SQL la existencia del nombre concreto...
Aunque funciona, creo que es una solución redundante; Es una comprobación que va a realizar la BD (con un índice único) de forma más eficiente, entonces, ¿Porqué programarla nosotros?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 25-11-2005
Avatar de kakesoft
kakesoft kakesoft is offline
Miembro
 
Registrado: dic 2004
Ubicación: Cuba
Posts: 99
Poder: 20
kakesoft Va por buen camino
Vtdeleon se que tu cuestión no está en que no quieras ayudarme, de hecho me estás ayudando, pero me haría falta que me dijeras un poquito más exacto dónde o sea en qué parte de la ayuda de delphi se encuentra eso, es que la ayuda de delphi es muy grande brother, y en cuanto a Neftali me gustaría si no es de molestia que me pusiera un ejemplito de código de como puedo capturar el error del que habla que a penas se cual es ese error ok no se molesten pienso que tienen las más buenas intenciones de ayudarme ok cuídense saludosss
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 05:28:31.


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