Foros del Web » Programación para mayores de 30 ;) » .NET »

actualizar base de datos

Estas en el tema de actualizar base de datos en el foro de .NET en Foros del Web. Hola amigos, espero no molestar mucho con mi pregunta, he estado buscando información pero no la he encontrado...el caso es que tengo una aplicación en ...
  #1 (permalink)  
Antiguo 07/12/2011, 16:37
 
Fecha de Ingreso: diciembre-2011
Mensajes: 70
Antigüedad: 12 años, 4 meses
Puntos: 2
actualizar base de datos

Hola amigos, espero no molestar mucho con mi pregunta, he estado buscando información pero no la he encontrado...el caso es que tengo una aplicación en .net contra una base de datos access, me sucede que cuando hago algún cambio en la aplicación y se la quiero poner al cliente que la utiliza le hice un programa que actualiza...quiere decir envía todos los datos de la base de datos antigua a la nueva base de datos...pero tengo un PROBLEMA, cuando la base de datos tiene campos nuevos nada...pero cuando tiene tablas nuevas...me da un error al actualizar por que no encuentra en la base de datos antigua las nuevas tablas que si están en la nueva base de datos que traigo...y ahí me para la actualización con un error, como puedo hacer para que obvie las tablas que que no encuentra?¿? y siga la acutalización sin parar?¿,. gracias
  #2 (permalink)  
Antiguo 08/12/2011, 11:42
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 6 meses
Puntos: 19
Respuesta: actualizar base de datos

Es un problema comun, porque cuando ejecutas tu aplicación, la base de datos se compia a una una carpeta temporal y ahi se guardan los cambios, por lo tanto si parar la compilación y la ejecutas de nuevo en tu visual no veras los cambios, porque otra vez se copia la base al temporal

Para solucionar esto provisoriamente en tu cadena de conexion pone una ruta absoluta a tu archivo de access (ejemplo: C:\documentos\proyectos vs2010\miproyecto\mibase.mdb)
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
  #3 (permalink)  
Antiguo 08/12/2011, 16:38
 
Fecha de Ingreso: diciembre-2011
Mensajes: 70
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: actualizar base de datos

gracias por tu aportación, pero creo no haberme explicado bien...imagina una base de datos que tiene una tabla que se llama productos...bien...yo tengo un programa que al darle a un botón todos los productos se vuelcan en otra base de datos idéntica...el problema que tengo es que ahora he hecho una base de datos con PRODUCTOS Y FAMILIAS...ahora sucede que acutaliza los productos pero cuando llega a la parte del código que pide actualizar la familia...me envía un error...de que la tabla no existe...date cuenta que estoy actualizando una versión del programa por otra...ahora el programa tiene nuevas funciones y requiere de más tablas...que no existían en la base de datos antigua...yo necesito que se salte de la actualización las tablas que no existe...te pongo algo de código....de como lo hago;

Cita:
Dim comadosborra = conexion.CreateCommand
comadosborra.CommandType = CommandType.Text
comadosborra.CommandText = "DELETE * from Productos
conexion.Open()
frmProgressbar.Show()
Dim Lecto1 = comadosborra.ExecuteNonQuery
conexión.close"
Dim comadosprod = conexion.CreateCommand
comadosprod.CommandText = "insert into Productos SELECT Plu,NomProducto,NomFamilia,NUnidades,dProducto,Iva ,NomProveedor FROM [MS Access;DATABASE=" & TextRutaActualiza.Text & "].[Productos]"
bueno ahí borro el contenido de la nueva base de datos y le introduzco los datos de la antigua...el problema está en las tablas que ahora si tiene la nueva base de datos y la vieja no...cuando el código le pide borrar bien..pero cuando quiere recoger los datos de la antigua base de datos no encuentra la tabla y deja de actualizar....
  #4 (permalink)  
Antiguo 09/12/2011, 17:08
 
Fecha de Ingreso: diciembre-2011
Mensajes: 70
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: actualizar base de datos

dificil no?¿?, imagino...bueno seguiré buscando soluciones...
  #5 (permalink)  
Antiguo 09/12/2011, 17:10
 
Fecha de Ingreso: diciembre-2011
Mensajes: 70
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: actualizar base de datos

más fácil...para no liarme tanto y no liaros a todos los del foro...en algo parecido a try catch?¿?...se puede decir que aunque existan un error continue el resto del proceso?¿?
  #6 (permalink)  
Antiguo 09/12/2011, 17:37
Avatar de drako_darpan  
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: actualizar base de datos

Hola que tal, bueno te podria dar algunas opciones haber si te sirven:

1.- Si tienes el modo de sabe el nombre de las tablas, puedes validar si existen o no:

IF EXISTS( SELECT NAME FROM SysObjects (NOLOCK) WHERE NAME = 'Tabla_Copiar' )
BEGIN
COPIAR
END
ELSE
BEGIN
CREAR TABLAS NUEVAS
END

2.- Puedes crear una tabla de control, donde puedes poner todas las tablas que ocupa tu sistema, asi cuando hagas el copiado vas a esa tabla y haces el copiado de las tablas que tengas en dicha tabla.

Espero te sirvan
  #7 (permalink)  
Antiguo 09/12/2011, 17:41
Avatar de drako_darpan  
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: actualizar base de datos

Se me olvido decirte, si lo quieres hacer como try y catch si se puede en SQL.

http://msdn.microsoft.com/es-mx/library/ms175976.aspx

En google hay mas información, tengo entendido que no es muy recomendable el try y catch, pero no lo e ocupado, haber si te sirve
  #8 (permalink)  
Antiguo 11/12/2011, 05:59
 
Fecha de Ingreso: diciembre-2011
Mensajes: 70
Antigüedad: 12 años, 4 meses
Puntos: 2
Respuesta: actualizar base de datos

bueno...drako...esto marcha...al terminarlo lo colgaré...grandes apoyos me has dado...sigo en ello

Etiquetas: net, tabla
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 00:01.