Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Rejilla de datos en C++ Builder (https://www.clubdelphi.com/foros/showthread.php?t=31296)

Orion3_14 04-05-2006 10:54:51

Rejilla de datos en C++ Builder
 
Estimad@s Compañer@s: mi problema es que tengo una rejilla de datos con varias filas y lo que quiero hacer es algo tan sencillo como selecionar una fila y eliminarla de la rejilla (y de la base de datos). Con la ayuda que proporciona el builder y algunos libros he descubierto el "SelectedRows" y sus métodos. Pero soy incapaz de hacerlo. Mi intención es seleccionar una fila y luego, en un bótón, coger esa fila (para eso debo tener el índice de la fila o algo parecido) y luego borrar ese registro de la base de datos.
Si álguien pudiese ayudarme le estaría muy agradecido.

Salud@s.

Orión.

reevil 04-05-2006 11:26:38

podrias poner mas datos de los componentes que usas??
se trata de un dbgrid? un StringGrid?? tambien mencionas base de datos :confused:
te puedo ayudar pero ocupo esos datos
saludos

reevil 04-05-2006 11:48:09

a ver si esto es lo que buscas:
teniendo en un dbgrid seleccionado el row que quieres eliminar y suponiendo que en la primer columna va un valor que no se repite en la tabla:

Código:

valor = DBGrid1->Fields[0]->DisplayText;
despues de que tienes eso ejecutas el siguiente query

Código:

DELETE FROM tabla WHERE columna = valor
PD... lo mas aconsejable es pasar la variable por parametro ... algo asi:
Código:

query->SQL->Clear();
query->SQL->Add("delete from tabla where columna = :valor");
query->ParamByName("valor")->AsString = DBGrid1->Fields[0]->DisplayText;
query->Execute();

espero te sirva, saludos

Orion3_14 04-05-2006 12:04:38

Gracias
 
Estimado reevil: en efecto, es eso precísamente lo que quería hacer. Lo que pasa es que yo lo estaba intentando enfocar desde el punto de vista de la línea entera, en lugar de simplificar, ceñirme a uno de los campos que es clave primaria de la B.D. y eliminar el registro.
Muchísimas gracias por dar en el clavo y darme la clave que necesitaba para seguir. Eres todo un experto.
Saludos.

Orión.


La franja horaria es GMT +2. Ahora son las 23:12:22.

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