Oracle - Modificación estructura tabla

 
Vista:

Modificación estructura tabla

Publicado por Nauj (3 intervenciones) el 23/08/2000 00:00:00
Tengo una base de datos creada sin seguir ningún criterio de normalización. Esto es no existen claves primarias, ni foráneas y hay campos redundantes. Voy a introducir claves, eliminar campos y cambiar el formato de algunos de ellos.

El problema es que las tablas tienen datos. Antes de introducir las modificaciones las voy a vaciar
ya que con algunas en lugar de ´alter table´ voy a hacer un ´drop´ y después un ´create´.(tengo un backup).

Mi duda es la siguiente. Una vez modificadas las tablas al cargar los datos del backup supongo que
habrá problemillas.

¿Qué tipo de problemas puedo tener?.

Supongo que si tengo registros duplicados en una tabla con PK no me dejará cargarla y que las tablas con FK me obligarán a que exista el registro correspondiente en la otra tabla. También tendré problemas de longitudes de campos.
¿puedo tener algún otro problemilla?, ¿es importante el orden al cargar?. Creo que ebo empezar por las que no tengan FK..¿no es así?.

Muchas gracias. Cualquier consejillo será bienvenido.

Nauj
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Modificación estructura tabla

Publicado por Marcelo (14 intervenciones) el 23/08/2000 00:00:00
Estas acertado en tu conjeturas, pero tambien tene que tener cuidado si es que tenes tablas maestro-detalle ya que primero tendrias que cargar las maestro y luego las detalle sino vas a tener problemas con las FK.
No se como tienes pensado hacer la carga, pero creo que seria mejor que crees un esquema paralelo y temporal con los datos y luego de que tengas en nuevo esquema que pases los datos con un store procedure que haga esta ´migracion´ para que puedas controlar mejor los errores que surjan. Seguramente será mas lento pero mas seguro.

Saludos y suerte.

MAV
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Modificación estructura tabla

Publicado por Reynaldo (10 intervenciones) el 29/08/2000 00:00:00
Si no existen restricciones definidas, significa que tu tendras que definirlas (Primary y Foreign Keys, Unique, not null, etc.). Te recomiendo que verifiques esas restricciones antes de crear las tablas.
Si desea mas detalles puedes contactarme, Con gusto de ayudare en lo que pueda.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Modificación estructura tabla

Publicado por Carlos Jurado (10 intervenciones) el 14/09/2000 00:00:00
Hola Naju, estoy de acuerdo con Marcelo, me ha sucedido lo mismo.
Lo que tienes que es lo siguiente:
1- Hacer un backup de tu base de datos (estructura y data) antes de modificar la estructura de las tablas.

2- Crear las tablas originales con todo y data, puedes utilizar el comando CREATE TABLE EMPLEADOS_BAK AS SELECT * FROM EMPLEADOS;

3- Luego haces las modificaciones que tienes que hacer en las tablas.

4- Cuando ya has terminado de modificar la estructura de las tablas haces un procedimiento en una FORMA (FMB) que lea de las tablas sin modificar y que vaya insertando en las tablas nuevas (EMPLEADOS_BAK --> EMPLEADOS).
Si tienes llaves duplicadas o datos que no cumplan con los constraints te va a mandar error pero poco a poco puedes ir corrigiendo esta data hasta cargarla toda.

Saludos.... Carlos J.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar