![]() |
Como seleccionar datos de una tabla e insertarlos en otra por Delphi
Hola comunidad, quisiera saber si alguno de ustedes sabe como extraer o seleccionar los registros de una tabla de una base de datos por medio de delphi y como insertar estos datos en otra tabla, es que deseo pasar estos registros, pero no se como???
|
Pueden haber varios opciones. Pero es necesario que des mas detalles de lo que quieres hacer...
Saludos |
Hola jscubillos5, bienvenido a Club Delphi :)
Como a todos los que se inician te invitamos a que leas nuestra guía de estilo. Saludos y gracias por tu colaboración :) |
jscubillos5,
Cita:
Cita:
Nelson. |
Hola gracias por la info sobre la guía de estilo, ahora entiendo que me exprese muy vagamente en el problema que tengo actual, lo que deseo aprender hacer es lo siguiente:
1. Por medio de una consulta de Delphi IBExpert, poder obtener todos los registros de una tabla. 2. Por medio de un objeto de Delphi, aun no se cual, poder tomar los datos consultados y meterlos en otra tabla. |
Hola jscubillos5.
No has comentado con que RDBMS estas trabajando, pero por tu mención a IBExpert es muy posible que sea Firebird. Si estoy en lo cierto, te recomiendo que leas este tutorial del amigo Caral: Tutorial (como empezar con Firebird) Novatos Saludos. :) |
Cita:
Aclara lo más exactamente posible tu duda, no hay problema de espacio, puedes escribir tanto como quieras. EDITO: haz caso a ecfisa, te ha indicado un excelente enlace. |
Hola ecfisa, efictavamente el proceso que deseo ejecutar es a una base de datos Firebird, y pues lo que deseo aprender hacer es lo siguiente:
1. Por medio de un boton en delphi, deseo que en su procedure Click(Sender: TObject);, es decir "en su proceso de ejecucción", dentro de este haga: 2. Una consulta a firebird por medio de un IBQUERY, que esta dentro del menu de contextual de delphi en la etiqueta INTERBASE. 3. Esta consulta debe traer todos los registros de una tabla. 4. Luego insertar estos registros en otra tabla. Ahora cada vez que intento citar o responder el mensaje de algunos de ustedes, me arroja un error el cual dice que yo no tengo permitido colocar imagenes o insertar urls. |
Para aprender eso, entonces, te viene perfecto el libro aconsejado por nlsgarcia y el enlace de ecfisa.
Y si tienes alguna duda, pregunta ^\||/ |
Cita:
De momento puedes poner los enlaces y algún moderador lo solucionará. Ejemplo: ttp://loquesea.com/imagen.jpg |
Cita:
(1) Lo necesario para conectar a la primera Base de Datos (IBDatabase, IBTransaction, IBQuery -o similares dependiendo de los componentes de conexión que estés usando-). (2) Lo mismo para la Base de Datos destino_; En este caso pueden ser un IBDatabase, IBTransaction, IBTable (o similares). (3) Configurar el primer IBQuery para ejecutar la consulta. (4) A medida que vas recorriendo el IBQuery (con los registros devueltos por la consulta), vas insertando en la segunda tabla. El proceso en sí es sencillo. Ir leyendo de la primera e ir insertando en la segunda. Ahora si lo intentas, nos puedes decir de forma más concreta dónde tienes problemas. ¿Seleccionar componentes? ¿Configurar los componentes? ¿Generar el código del proceso? .... |
Continuando con este post
Hola comunidad, pues he leido los libors que me dieron y los recursos que he encontrado en la web, y he llegado a este punto:
Cuando ejecuto este código arroja el siguiente error: Dynamic SQL Error SQL error code = -804 Data type unknown Client SQL dialect 1 does not support reference to BIGINT data type, ¿Alguien sabe el por que de este error? |
Hola comunidad
Cita:
ya que como lo tenia antes llama es el valor del campo o el valor deñ registro |
Respuesta de la pregunta
Cita:
Finalmente seria colocar que por cada inserción se executa una consulta IBQUERY en la base de datos con el SQL.TEXT:= SentenciaInsercion; Luego se debe ejecutar Consulta.EXEC; y este código deberia ir debajo de cada sentencia de insertar y por encima del archivo del lock, con esto se garantiza que el insert que sea escrito en el lock se haya procesado antes en la base de datos y listo :D. |
La franja horaria es GMT +2. Ahora son las 04:29:43. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi