Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   crear nuevo campo a una tabla si no existe (https://www.clubdelphi.com/foros/showthread.php?t=39552)

landro 23-01-2007 21:21:14

crear nuevo campo a una tabla si no existe
 
Hola a todos!!
Tengo una duda, a ver si me podeis ayudar.
Como puedo crear un campo nuevo a una tabla, siempre que no exista el campo.
Me explico:
Tengo una tabla apuntes con un campo tema, otro texto y otro fecha, pero como tengo backup mas antiguos de la BD, en el nuevo tengo el campo fecha, pero en los antiguos no. Queria que comprobase que no existe y lo cree nuevo.

Gracias por ayudarme

delphi.com.ar 23-01-2007 22:29:04

Si quieres hacerlo todo desde el lado del motor, puedes averiguarlo del diccionario de datos del motor, pero todos los motores tienen diccionarios distintos, así que es importante que digas con que motor estas trabajando.
Si es del lado del cliente, simplemente puedes hacer un "SELECT *" de la tabla en cuestión, y fijarte si existe el campo en la colección Fields.
Como tercera opción puedes hacer el ALTER TABLE ADD y en el caso que te de error es que existía, caso contrario creo el campo :D

Saludos!

landro 23-01-2007 22:46:02

Gracias por contestar delphi.com.ar
Utilizo Firebird como motor de BD.
Lo que queria saber es si existe una sentencia en SQL con por ejemplo un IF THEN para comprobar la existencia del campo, si no lo crea.
Tengo que mirar la documentación de Firebird.
Si alguien sabe y me puede ayudar se lo agradezco.
Gracias

delphi.com.ar 24-01-2007 21:56:18

Desconozco el diccionario de datos de FireBird, pero muevo el hilo al foro indicado.

Saludos!


La franja horaria es GMT +2. Ahora son las 12:14:25.

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