Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Problemas al migrar Access a SQL Server

Estas en el tema de Problemas al migrar Access a SQL Server en el foro de SQL Server en Foros del Web. Estimados Amigos, Existen varios post relacionados con el tema de la migración desde Access a SQL Server 2000, pero ninguno habla de los problemas que ...
  #1 (permalink)  
Antiguo 04/11/2006, 06:40
Avatar de luisvasquez  
Fecha de Ingreso: diciembre-2003
Ubicación: Venezuela
Mensajes: 879
Antigüedad: 20 años, 5 meses
Puntos: 6
Problemas al migrar Access a SQL Server

Estimados Amigos,

Existen varios post relacionados con el tema de la migración desde Access a SQL Server 2000, pero ninguno habla de los problemas que se presentan cuando la migración está (supuestamente) ok...quiero comentarlos a ver si tienen una solución:

1- Campos Autonumericos: Los campos autonumericos de Access no los convierte. ¿Tendría que entrar a cada tabla y redefinirlos como int con el identity para que haga el incremento?

2.- Claves principales: Hasta ahora he revisado el 50% de las tablas de mi B/D y no tienen las claves principales definidas. No puedo asegurar esto, pero creo que, cuando las claves son autonumericas (o formadas por algun campo autonumerico), entonces no las convierte. ¿Hay que hacer esto a pie también?

3.- Relaciones. Agregué todas las tablas (con sus relaciones) a un diagrama y TODAS están sueltas, es decir, las relaciones se perdieron. Ingresé algunos datos que atentan contra esas relaciones y los dejó entrar sin problemas, una prueba más de que las relaciones no están.

Dados esto 3 problemas (seguro existen algunos que no conozco) estoy pensando que tal vez hice algo de forma inadecuada en la migración, porque me parece extraño que, tratandose de productos hermanos, sean tan incompatibles. (bueno, mi hermano y yo somos muy incompatibles, pero ese es tema de otro foro )

Para una base de datos pequeña esto puede parecer facil de resolver en forma manual, pero la base de datos que estoy manejando tiene más de 100 tablas e infinitas relaciones. Hacer esto "a pie" implica un riesgo alto, porque las posibilidades de error son muchas...

¿Alguna sugerencia?

¿creen que estoy haciendo algo mal? Vaya que he probado varias veces y siempre igual...no arroja ningun mensaje de problema..dice que todo ok...

Creo que Microsoft y yo tenemos definiciones diferentes de la palabra OK.

Agradezco sus comentarios y su ayuda,
Luis Vásquez

Última edición por luisvasquez; 06/11/2006 a las 13:04
  #2 (permalink)  
Antiguo 06/11/2006, 13:05
Avatar de luisvasquez  
Fecha de Ingreso: diciembre-2003
Ubicación: Venezuela
Mensajes: 879
Antigüedad: 20 años, 5 meses
Puntos: 6
Hola de nuevo amigos,

Algún comentario al respecto?

mil gracias!

Luis
  #3 (permalink)  
Antiguo 06/11/2006, 18:03
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
No tengo experiencia con Access, aunque...

La manera más sencilla de lidiar con los identity es crear la tabla SIN identity, migrar los datos y entonces modificar la columna para que ahora si sea como identity, si no lo haces, el ID original se perderá y se creará uno nuevo al momento de la inserción de los datos, lo que te dará problemas con las relaciones en otras tablas.

Sobre las relaciones... ¿Access maneja relaciones?
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #4 (permalink)  
Antiguo 06/11/2006, 18:25
Avatar de luisvasquez  
Fecha de Ingreso: diciembre-2003
Ubicación: Venezuela
Mensajes: 879
Antigüedad: 20 años, 5 meses
Puntos: 6
Gracias por tu respuesta.

Te cuento que la migración desde access se hace en el Enterprise Manager de SQL server. En el momento de migrar la base de datos se crea la estructura en SQL server y se pasan los datos...todo de un plumazo.

La razón por la que hago esto es para no crear en SQL server la estructura de las muchas tablas de mi base de datos. Al migrarla se crea, pero con los problemas que indiqué anteriormente.

Un campo autonumerico en Access debería convertirse a un identity 1,1, pero no lo hace, lo deja como un simple int.

Los primary key desaparecen y las relaciones que estaban creadas en Access también...

Saludos, Luis Vásquez
  #5 (permalink)  
Antiguo 23/06/2008, 05:36
 
Fecha de Ingreso: abril-2008
Mensajes: 1
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Problemas al migrar Access a SQL Server

Pues creo que no hay otra manera , tienes que crear los autonuméricos, las claves principales, los índices, las relaciones....Ah! y no olvides poner valores predeterminados en ciertos campos. Por ejemplo, si tienes en access un dato tipo sí/no, pon predeterminado 0, aunque permitas nulos, no te funcionará bien, también te recomiendo poner 0 como valor predeterminado en los campos de tipo numérico.
Por supuesto, si en tus tablas de access tenías valores predeterminados, no olvides ponerlos, parece una tontería pero si no lo haces te dará un error del tipo otro usuario está intentando modificar el mismo registro...........
Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:08.