Existe manera de modificar nombre de campo y tipo de datos de una tabla por codigo?

3,110 views
Skip to first unread message

alejandro

unread,
Dec 26, 2013, 5:06:35 PM12/26/13
to publice...@googlegroups.com
Hola amigos del foro!! estoy migrando datos y me encuentro que se me truncan algunos campos y el tamano y tipo de dato, existe manera de por ejemplo:
un campo migrado como

Codigo N(1)   cambiarlo por codigo a CodigoN Logical(1)
Domicilio C(20) cambiarlo por domicilioN C(40)

y asi varios campos sin tener que cambiarlos modificando directamente la tabla??

Millon de gracias por vuestro tiempo y les deseo felices fiestas!!

Ricardo Pina

unread,
Dec 26, 2013, 5:20:12 PM12/26/13
to Grupo VFP
Hola Alejandro

Revisa el comando ALTER TABLE

Saludos
--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

Ing.Daniel Bojorge

unread,
Dec 26, 2013, 5:22:51 PM12/26/13
to publice...@googlegroups.com
Si, con alter table.

Dios L@s Bendiga

Saludos,

Daniel (Con 1 Estrella DCE de Microsoft)
www.debsconsultores.com
Nicaragua

"Si ustedes permanecen unidos a mí, y si permanecen fieles a mis enseñanzas, pidan lo que quieran y se les dará.
(Juan 15:7 DHH)
Bendito el varón que se fía en el SEÑOR, y cuya confianza es el SEÑOR.
(Jeremías 17:7 RV2000)

HernanCano

unread,
Dec 26, 2013, 7:30:21 PM12/26/13
to publice...@googlegroups.com
Depende del procedimiento que estés utilizando para tu migración

alejandro

unread,
Jan 3, 2014, 8:32:48 AM1/3/14
to publice...@googlegroups.com
Hola a todos!! muchas gracias por contestar el tema es que tengo que renombrar un campo y tambien el tipo de datos eso no me lo permite el alter.
por ejemplo

Codigo n(1) por CodigoX n(10) por ejemplo

Se puede hacer??

Antonio.xt

unread,
Jan 3, 2014, 9:28:36 AM1/3/14
to publice...@googlegroups.com

Claro que se puede hacer, yo hice la prueba y si funciono. Pero es en 2 pasos, las instrucciones son las siguientes.

Primero cambias el tipo de dato de la columna:
ALTER TABLE {tu tabla} ALTER COLUMN Codigo Numeric(10)

Luego para cambiar el nombre de la columna, ejecutas un procedimiento de SQL
sp_rename 'tu_tabla.Codigo', 'CodigoN', 'COLUMN'

Bueno, este metodo es para SQL Server, no se en que base de datos necesitas hacer eso...

alejandro

unread,
Jan 3, 2014, 4:30:11 PM1/3/14
to publice...@googlegroups.com
Hola la base de datos es nativa de visual fox.

Muchas Gracias!!

El jueves, 26 de diciembre de 2013 19:06:35 UTC-3, alejandro escribió:

Jairo Miranda

unread,
Jan 3, 2014, 4:48:18 PM1/3/14
to publice...@googlegroups.com

La verdad es que modificar un campo de tipo numérico  a carácter u otro tipo se puede hacer con la instrucción Alter table, la tabla se debe usar en modo exclusivo , el problema radica en los form o reports, y querys donde el uso de ese campo se le haya asignado format o imputmask..

 

JM

Jorge Kiernan

unread,
Jan 3, 2014, 5:58:17 PM1/3/14
to publicesvfoxpro
si cambias el tipo de dato, el problema puede estar en la traducción del contenido. ¿es tan lineal?

alejandro

unread,
Jan 5, 2014, 5:42:56 PM1/5/14
to publice...@googlegroups.com
Haber quizas lo pueda solucionar de otra manera, tengo una base de datos en mysql y tengo que migrarla a bases nativas.
El tema es que cuando levanto los datos obtenidos de la exportacion en archivos excell de la base en mysql, al armar los campos me los trunca a 10 el nombre del campo.
Como evito el echo de que se trunquen los campos a 10 caracteres 
ejm

CodigoProveedor me lo trunca a CodigoProv es decir a largo de 10 por lo que tengo que cambiar todo el codigo de mi aplicacion.
yo hago lo siguiente

select c1 as CodigoProveedor, c2 as codigoCliente,..... cN as .. into cursor Migracion readrite

al abrir la tabla Migracion me trunco los campos ejm

CodigoProv, CodigoClie



Muchas Gracias


El jueves, 26 de diciembre de 2013 19:06:35 UTC-3, alejandro escribió:

Jorge Kiernan

unread,
Jan 5, 2014, 6:59:43 PM1/5/14
to publicesvfoxpro
usa directamente las tablas o cursores de vfp. 
Crea la tabla con los nombres largos (o un cursor) acomodados igual que vienen en la planilla.
Luego usa el comando append from miplanilla type xls
(la planilla debe estar cerrada y en formato excel 5.0)

HernanCano

unread,
Jan 6, 2014, 1:01:20 AM1/6/14
to publice...@googlegroups.com

Alejandro: en VFP tienes tres opciones:

1. Utilizar archivos DBF contenidos en una base de datos DBC.

2. Utilizar cursores (no tienen que estar contenidos en una base de datos DBC) (no creo que pueda ser tu caso).

3. Utilizar archivos DBF libres, es decir "no contenidos en una base de datos DBC" PERO CON NOMBRES DE CAMPO (y de DBFs) CORTOS.

Probablemente tu mejor apuesta es la 1, pues creo que debes "migrar" toda tu app de MySQL a DBFs. Entonces tus DBFs debes "meterlas" a un DBC.

Tip: Crea las DBF tal cual lo haces antes, pero antes de empezar con la primera --durante la migración inicial--, crea la DBC, más o menos así:

create database EMPRESARIAL

Eso es todo.

El domingo, 5 de enero de 2014 17:42:56 UTC-5, alejandro escribió:

¿Cómo evito el hecho de que se trunquen los campos a 10 caracteres?

alejandro

unread,
Jan 8, 2014, 1:03:26 PM1/8/14
to publice...@googlegroups.com
Perfecto hernan ahi funciono!!!! 
Muchisimas gracias a vos y a todos los que se tomaron el tiempo de contestar.


El jueves, 26 de diciembre de 2013 19:06:35 UTC-3, alejandro escribió:
Reply all
Reply to author
Forward
0 new messages