Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   modificar en sql (https://www.clubdelphi.com/foros/showthread.php?t=29233)

RICHARIN 16-01-2006 19:28:53

modificar en sql
 
hola a todos.... bueno mi problema es el siguiente...... realizo una consulta en sql.... pero uso el ordr by para ordenarlo mediante un determinado campo... el codigo que uso es el siguiente
" select * from alumno
where curso='septimo'
order by paterno, materno, nombres "
todo me funciona..... pero el problema es que cuando quiero modificar algun dato en la grid no me es permitido.... fui a la opcion request live del query y esta en true, tambien verifique la opcion del grid option dgediting y esta tambien esta en true.... por favor si alguien podria ayudarme en esto... solo quiero que me indiquen como puedo modificar los datos en la grid gracias....

marcoszorrilla 16-01-2006 19:33:09

Si hablamos de Paradox, pues resulta que una de las condiciones para que te permite hace cambios es no hacer una consulta que implique más de una tabla ni utilizar Order By, por lo tanto ese es el motivo.

Un Saludo.

marcoszorrilla 16-01-2006 19:37:09

Pero no es imposible lo que quieres, puedes mirarte la ayuda del componente TUpdateSql.



Un Saludo.

RICHARIN 16-01-2006 19:45:19

podrias indicarme
 
no se si podrias darme un ejemplo usando el TUPDATESQL por favor... gracias

ContraVeneno 16-01-2006 23:40:00

Si mi memoria no me falla, la ayuda de delphi trae un ejemplo sobre como usarlo. Presiona F1 sobre TUpdateSQL en Delphi.

RICHARIN 17-01-2006 22:36:13

no me sale
 
sabes ya hice la prueba pero resulta que en mi maquina no quiere correr... ese ejemplo.... y la verdad hice lo mismo que esta en la ayuda y no me deja editar... por favore no si es mucho pedir podrian darme un ejemplo.... o por lo menos indicarme como usar el objeto updatesql.... gracias

RICHARIN 18-01-2006 19:08:21

por lo menos algo.....
 
bueno estoy de acuerdo en lo que dicen.... que no se debe hacer el trabajo de otro... pero por lo menos pido una pagina en la que pueda encontrar algun ejemplo... gracias.....:o

cuburu 19-01-2006 02:52:11

Por qué no mejor editas esa información a través de un doble click sobre el registro que desees modificar y a continuación en una pantalla te muestre los datos de ese registro, modificarlos y aplicarle el update por medio de un SQL, por ejemplo

Código SQL [-]
ALTER TABLE tabla1
SET campo1 = :C1,
      campo2 = :C2,
      ...
     camposn = Cn,
WHERE CampoLlave = :OldCampoLlave

Claro, esto sería guardando previamente en una variable temporal el campo de identificación para realizar la actualización.

roman 19-01-2006 03:31:07

Normalmente yo hago esto que menciona cuburu, es decir, prácticamente no uso rejillas editables. Pero hay casos en los que es necesario. Por ejemplo, tengo una pantalla donde se asientan las calificaciones de alumnos. Para el capturista sería muy pesado estar abriendo una ventana secundaria por cada registro, así que dejo una columna editable.

Por otra parte, si mi memoria no me falla, esa misma sentencia que escribe cuburu puede colocarse en la propiedad ModifySQL de una componente TUpdateSQL, asociar ésta al Query y ¡listo! ya está lo necesario para hacer editable la consulta. ¿De qué forma si no, trabajaría tal componente?

Así que el mensaje de cuburu puede también tomarse como una ayuda para usar el TUpdateSQL :)

// Saludos

jachguate 19-01-2006 06:39:58

Cita:

Empezado por cuburu
modificarlos y aplicarle el update por medio de un SQL, por ejemplo

Código Delphi [-]
ALTER TABLE tabla1
SET campo1 = :C1,
      campo2 = :C2,
      ...
     camposn = Cn,
WHERE CampoLlave = :OldCampoLlave

La sentencia correcta a generar sería un Update y no un alter table, al menos en todos los motores que conozco.. :D

RICHARIN 20-01-2006 17:48:49

gracias
 
gracias por las respuestas lo pondre en practica ahora.....
richarin


La franja horaria es GMT +2. Ahora son las 07:19:12.

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