Creando campos en tiempo de ejecucion
Que tal amigos del foro.
Estoy intentando lo siguiente. Tengo una tabla hecha en firebird con una estructura en especifico. Necesito hacer una reestructuracion completa de esa tabla (renombrar campos y crear nuevos). El programa realiza la reestructuracion sin problemas, pero cuando intento accesar a algun nuevo campo creado, me marca un error indicandome que no existe dicho campo. Utilizo los componentes BDE que vienen con Delphi (desafortunadamente no puedo utilizar otros como el Zeos). Alguien sabe como puedo reestructurar una tabla y poder accesar a ella al instante? (porque si corro el programa nuevamente, ya me reconoce la estructura nueva) Saludos! |
hola, intenta hacerle commit a la transaccion de tu componente Zeos con que haces tu modificacion de la base de datos (asumo que se llamaria algo asi como ZeosScript o algo asi, no conosco mucho dichos componentes)
|
Creo que el utiliza los BDE no los Zeos. bueno en general al cambiar la estructura es casi seguro que te pida cerrar la conexion (TDatabase) y volvera a abrirla junto con las tablas.
|
Gracias Kipow por responder.
De hecho realizo una desconexion y una conexion a la base de datos. Lo que intento hacer es lo siguiente: 1) Realizo reestructura de la tabla. 2) Como esta tabla contiene informacion, la consulto (tambien mediante un TQuery con RequestLive = true) y edito el registro. Pero cuando intento Editar el registro me marca un error de que el campo no existe. Pero curiosamente edito 2 campos, los cuales son nuevos. Pero solo uno de ellos me marca el error que no existe.
¿¿¿Alguna sugerencia!???? |
Cita:
|
Seleciona el campo CODIINTE y el campo CAMBPASE, luego pasale los valores que quieras.
|
Cita:
Cita:
Saluditos |
Jajajajaja!! si es cierto!!! tengo que seleccionar los dos campos para poderles asignar valores. Es que ayer ya tenia seco el cerebro y no vi semejante estupidez!!! ¿Les ha pasado que ven tanto codigo y errores tan simples no los pueden ver?
Gracias! y saludos a toda la comunidad ClubDelphi |
La franja horaria es GMT +2. Ahora son las 21:10:13. |
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