Club Delphi  
    Paypal   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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-08-2005
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Poder: 25
Crandel Va por buen camino
No entiendo muy bien que tiene que ver lo que escribiste en la última respuesta respecto a la última.

pero si lo que queres es actualizar un registro podes hacer:
Código SQL [-]
     UPDATE subcomp
     SET nombre_especifico= nombre, flag = flag
     WHERE consecutivo= cons;

es esto lo que necesitas??
__________________
[Crandel]
Responder Con Cita
  #2  
Antiguo 01-08-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 22
el_barto Va por buen camino
es que yo decia como recorrer la grilla dado que no he podido modificar solo un registro, para despues recorrer la tabla ,en el ejemplo todos tienen como nombre especifico Televisor Sony yo necesito que en una grilla solo me muestre uno de los tres y que cuando lo modifique solo me modifique en este caso solo el consecutivo 80, por que cuando modifica siempre modifica a todos los que tengan el nombre_especifico Televisor Sony.

En el modify de mi dataset agregue la linea que me sugeriste y en el select deje la linea que yo tenia pero ahora ya no me modificaaaaa.

Entonces no se como hacer para hacer el distinct y que solo me modifique 1 registro por cada nombre_especifico

Ojala esta vez si me hubiese hecho entender
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #3  
Antiguo 02-08-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Cita:
Empezado por el barto
yo necesito que en una grilla solo me muestre uno de los tres y que cuando lo modifique solo me modifique en este caso solo el consecutivo 80
¿Puedes saber de antemano cual quieres modificar?
- Si es así, añade en el SELECT, la clave unica de ese producto, así solo muestras 1 producto en el resultado. En el modifySQL añades la misma restricción.
- Si no es así, deberás esperar que el usuario haga clic en uno de los resultados, y despues pasarle la clave unica en el modifySQL

Yo al menos, no sé si el consecutivo es único o no. Si utilizas la claúsula distinct en el select, es que puede haber varios

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 02-08-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 22
el_barto Va por buen camino
No en realidad consecutivo es solo una bandera que usamos para manejar el item, consecutivo no se repite nunca, pero las llaves primarias de esta tabla que quiero modificar es:

item, nombre_atributo, codigo_comp
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #5  
Antiguo 02-08-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Tal y como dijo Crandel:

Código SQL [-]
 UPDATE subcomp
     SET nombre_especifico= nombre, flag = flag
     WHERE item = :OLD_item and
               nombre_atributo = :OLD_nombre_atributo and 
               codigo_comp = :OLD_codigo_comp;

Yo he añadido el prefijo OLD_ , como son claves primarias no puede cambiar.
No dudo que pueda equivocarme ya que en c/s estoy empezando

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 02-08-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 22
el_barto Va por buen camino
pero ya se cual es el problema resulta que yo no puedo armar un where de un deletesql ni el modifysql sino coloco los campos con anterioridad en el select, entonces yo no puedo colocar en el select el campo nombre_especifico por que entonces el distinct no me funciona (me muestra todos los registros sin hacer distincion de ninguna clase).
Entonces como no lo pude colocar en el select no lo puedo colocar en el where de mi modify y por tal motivo me modifica todos los registros que tengan un nombre_especifico comun, en este caso todos los registros que tengan como nombre_especifico televisor sony son modificados.

En mi humilde opinion creo que es imposible hacer lo que yo queria, entonces buscare otra forma de hacerlo, lastima por que como programador es frustrante encontrarse con casos como este
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #7  
Antiguo 02-08-2005
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Poder: 25
Crandel Va por buen camino
Por qué te va a modificar todos si vos tenes un solo consecutivo = 80?
__________________
[Crandel]
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 14:44:42.


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