SoloCodigo
Programación General => C/C++ => C++ Builder => Mensaje iniciado por: SkaJaf en Lunes 15 de Mayo de 2006, 14:41
-
Buenas a todos, mi problema es el siguiente:
He implementado una base de datos de imágenes y cuando inserta las imágenes no hay ningún problema, el problema aparece cuando elimino alguno y a continuación quiero volver a insertarlas, no me hace la insercción y no se a que se puede deber.
Adjunto el código de inserccion:
Table1->Open();
Table1->Append();
DBEdit1->Text=AnsiString(id1);
Table1->Post();
Table1->Close();
y el de eliminación, creo que el problema debe estar aqui, pero no lo encuentro
Table1->Open();
Table1->First();
while ((Table1->FieldByName("id")->AsString!=AnsiString(id))&&(!Table1->Eof))
{
Table1->Next();
}
Table1->Delete();
Table1->Close();
Gracias
-
Bueno, primero porfavor ayudame a entenderte un poquito mejor.
¿estas intentando borrar solo la imagen, o todo el registro?
La funcion Delete() borra todo el registro.
Bueno, yo no entendi exactamente que es lo que quieres, el codigo si lo entiendo.
si quieres desgloza un poco más la explicacion y veré si te puedo ayudar.
Un saludo
-
Buenas de nuevo, perdona que no me haya explicado bien.
Era por simplificar,jejeje
Quiero borrar todo el registro.
Borrarlo lo borro. El problema es que despues de borrarlo, si quiero introducir de nuevo otro registro, (identificar, imagen), no lo introduce, no me da error ni nada, simplemente no lo hace.
Si ejecuto el programa si haber eliminado nada, la introducción de (identifi,imagen) se hace correctamente.
-
Creo que el problema no está en el código, creo que se debe al tamaño que ocupa la tabla en memoria, si tengo solo 3 o 4 imagenes en la base de datos si que funciona bien, inserta, elimina, busca sin problemas, pero cuando el tamaño se dispara 150 - 200 imágenes, en el momento que elimino 1 imagen, la base de datos es inconsistente y no se como arreglarlo, si alguién tiene alguna idea.
Gracias
-
Ya he encontrado el problema:
Si solo introducia imágenes no habia ningun problema, pero en el momento de eliminarla se eliminaba, pero si queria volver a introducir una, ya no se introducia.
Esto se debia a que internamente al eliminar se cambia el DataSet
Me he dado cuenta despues de muchas vueltas, al final lo he solucionado antes de hacer una nueva inserccion en la base de datos, ajustar de nuevo el dataset y asi no hay ningun problema.