elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:40  


Tema destacado: Nueva página de elhacker.net en Google+ Google+

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderador: [D4N93R])
| | | |-+  Comparar esquemas de dos bases de datos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Comparar esquemas de dos bases de datos  (Leído 970 veces)
criskapunk

Desconectado Desconectado

Mensajes: 255



Ver Perfil
Comparar esquemas de dos bases de datos
« en: 1 Agosto 2011, 18:48 »

Buenas!

El problema es asi:
Tengo que comparar el esquema de dos bases de datos en Acces usando vb.net y devolver todos los datos/tablas/relaciones, etc que esten presentes en una y no en la otra.

En Access lei que se puede utilizar el documentador, que devuelve la estructura de una base de datos, pero no entiendo como puedo hacer para compararlo :\


Edit:
Encontre esta forma de obtener el nombre de todas las tablas de la base, pero no encuentro todavia como puedo hacer para obtener los campos de cada una. Alguna sugerencia?

Código
Public Class Form1
 
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 
       Dim conexion As OleDb.OleDbConnection
       Dim strConexion As String
       Dim tablas(0) As String
 
       '-- Conexion con la base de datos modelo --
       strConexion = "Provider=Microsoft.jet.OLEDB.4.0;Data Source=C:\base.mdb;Jet OLEDB:Database Password=pass;"
       conexion = New OleDb.OleDbConnection(strConexion)
       conexion.Open()
 
       '-- Almacena en un vector los nombres de todas las tablas --
       Dim i As Integer = 0
       Dim tabla As DataTable = conexion.GetSchema("TABLES")
       For Each t As DataRow In tabla.Rows
           Dim o As Object = Nothing
           o = t.Item("TABLE_TYPE")
           If (o.ToString.ToUpper = "TABLE") OrElse (o.ToString.ToUpper = "BASE_TABLE") Then
               tablas(i) = t("TABLE_NAME").ToString
               MessageBox.Show(i)
               For Each c As DataColumn In tabla.Columns
                   MessageBox.Show(c.ColumnName)
               Next
               ReDim Preserve tablas(i + 1)
               i += 1
           End If
       Next
 
       MessageBox.Show(tablas(0))
       conexion.Close()
 
   End Sub
End Class

Un saludo y gracias.


« Última modificación: 2 Agosto 2011, 21:47 por R0LFback » En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
guardar datos de usuarios en nuestras bases de datos
Desarrollo Web
cuenta.net 3 679 Último mensaje 13 Diciembre 2007, 20:19
por Azielito
Comparar usuario y contraseña con la base de datos. Ayuda
Programación Visual Basic
70N1 6 4,320 Último mensaje 28 Agosto 2008, 15:27
por ssccaann43 ©
(Solucionado)Duda: Comparar datos en vectores en C++
Programación C/C++
final_frontier 10 1,867 Último mensaje 8 Diciembre 2008, 19:46
por final_frontier
Comparar Base de datos MySQL (Solucionado)
Bases de Datos
elecktra 4 5,093 Último mensaje 22 Noviembre 2009, 23:17
por elecktra
comparar y eliminar datos de un fichero
PHP
Roc668 1 1,602 Último mensaje 13 Diciembre 2009, 17:43
por Maox
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines