Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-10-2004
Avatar de vpepen
vpepen vpepen is offline
Miembro
 
Registrado: nov 2003
Ubicación: Higüey
Posts: 104
Poder: 21
vpepen Va por buen camino
Cambiar el tipo de dato de una columna !!!

Hola Foro:

Quisiera saber si es posible modificar el tipo de dato de una columna en una tabla de una base de datos InterBase usando la opción 'Interactive SQL' del IBConsole.

He probado a agregar, renombar y borrar columna y me funciona, pero lo explicado arriba me está dando un poquito de dolor de cabeza.

Las gracias anticipadas,

Víctor.-
Responder Con Cita
  #2  
Antiguo 13-10-2004
rafita rafita is offline
Miembro
 
Registrado: ago 2003
Ubicación: Cuenca- España.
Posts: 309
Poder: 21
rafita Va por buen camino
Hola.
No tengo la respuesta a tu pregunta, pero te puedo dar una idea que en alguna ocasión me ha dado buenos resultados:

* Crea una nueva columna.
* Rellénala con los datos de la otra columna, pero conviertelos a tu nuevo tipo de datos.
* Si tienes algún problema, borra la columna nueva y repite el proceso hasta que obtengas lo que deseas.

* Cuando hayas convertido tus datos al nuevo formato borra la columna vieja y renombra la nueva.

Saludosssss
__________________
Rafita.
Responder Con Cita
  #3  
Antiguo 13-10-2004
AMO AMO is offline
Miembro
 
Registrado: jun 2003
Ubicación: Mexico D.F.
Posts: 19
Poder: 0
AMO Va por buen camino
Saludos

La instrucion va mas o menos asi:

Alter table nombre_tabla alter nombre_columna type nuevo_tipo

la instruccion la puedes consultar en la ayuda del ibconsole.

Espero te sirva
Responder Con Cita
  #4  
Antiguo 14-10-2004
Avatar de vpepen
vpepen vpepen is offline
Miembro
 
Registrado: nov 2003
Ubicación: Higüey
Posts: 104
Poder: 21
vpepen Va por buen camino
La opción de Rafita es buena, aunque quiero saber si existe la posibilidad de hacerlo con una sentencia para ello.

AMO, la forma en que dices que puede realizarse lanza el siguiente error:

Definición de la tabla:

CREATE TABLE X
(C VARCHAR(5));

Modificación del tipo de dato

ALTER TABLE X
ALTER C VARCHAR(15);

Error:

Dynamic SQL Error
SQL error code = -104
Token unknown - line 1, char 22
VARCHAR
Statement: ALTER TABLE X ALTER C VARCHAR(15)


Las gracias anticipadas,

Víctor.-
Responder Con Cita
  #5  
Antiguo 14-10-2004
AMO AMO is offline
Miembro
 
Registrado: jun 2003
Ubicación: Mexico D.F.
Posts: 19
Poder: 0
AMO Va por buen camino
Saludos

En tu instruccion falto la palabra type. la instruccion debera ser:

alter table x alter c type varchar(15)

y funciona perfectamente (probado)
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 16:45:57.


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
Copyright 1996-2007 Club Delphi