Optimización de base de datos paradox

Estoy realizando una aplicación con una base de datos Paradox
las preguntas son las siguientes:
¿Cuál es el volumen de datos que soporta una tabla Paradox?
¿Cuándo se borra un registro de una tabla, como se comporta el componente TTable asociado con la misma, es decir,
realiza un borrado lógico o un borrado físico?
Si realiza un borrado lógico,¿Cómo puedo optimizar la tabla luego de un determinado tiempo de uso?

1 respuesta

Respuesta
1
Pues mira lo que te puedo decir sobre el volumen de paradox es que aguanta muchísimos registros sin problemas.
Si tu quieres un borrado lógico o físico lo puedes hacer con queries, apuntando a tu base de datos, todo depende de tu diseño de tablas, es obvio que si agregaste un campo status para saber si esta activo o dado de baja pues puedes hacer bajas lógicas sino, solo van a ser físicas...
Mira un ttable lo utilizas para dar de alta, por ejemplo:
ttable1.open;
ttable1.append;
ttable1.fieldbyname('clave').asstring:=edit1.text;
ttable1.fieldbyname('edad').asinteger:=strtoint(edit2.text);
ó
ttable1.fieldbyname('edad').asvariant:=strtoint(edit2.text);
ttable1.post;
ttable.close;
Para modificar un registro o hacer una baja lógica puedes poner un componente query con apuntando a tu BASE DE DATOS y en la propiedad sql pones:
update tabla set status='B' where clave=:clave, (:clave) es un parametro el cual debes definir en la lista de params del query el tipo de dato,por ejemplo si es string pues lo seleccionas de la lista, y puedes separar con "," cada modificacion del registro....
para hacer una baja fisica solamente pones delete from tabla where clave=:clave, pero ten cuidado de poner la condicion where porque sino vas a borrar la tabla completa....
para el caso de las modificaciones, deberas poner en tu codigo lo siguiente:
query1.parambyname('clave').asstring:=edit1.text;
query1.execsql;
en caso de querer hacer una consulta lo que debes poner en el sql del query es :
select * from tabla y tu condicion where.
para este caso se ejecuta asi:
query1.parambyname('clave').asstring:=edit1.text;
query1.close;
query1.open;
Y ya vas a poder moverte a través de los registros con las instrucciones query1. First, query1. Next, etc o vaciar toda la consulta en un dbgrid, dbcombobox, dblookupcombobox, o un quickreport
Muchas gracias jarvher, tu respuesta me ha sido de gran utilidad. Ademas es la primer respuesta que recibo ya que soy un nuevo usuario de todoexpertos.Por lo tanto, cinco estrellas para vos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas