Exportar de SQL a MDB

03/07/2006 - 18:53 por Cid | Informe spam
Querria exportar desde VB2005 una bbdd de SQL server 2000 a una bbdd access
MDB, como se podria hacer esto? Gracias.
 

Leer las respuestas

#1 SoftJaén
03/07/2006 - 21:10 | Informe spam
"Cid" escribió:

Querria exportar desde VB2005 una bbdd de SQL
server 2000 a una bbdd access MDB, como se
podria hacer esto?



Hola:

Si lo deseas hacer de una manera fácil y eficaz, abre una conexión con la
base de datos de Access, mediante el proveedor de datos Ole Db .NET, y
ejecutas una consulta SQL de creación de tabla, en cuya cadena de conexión
deberás de especificar tu intención de conectarte al servidor de SQL Server
mediante el driver ODBC del mismo. Aquí tienes un ejemplo:

Imports System.Data.OleDb

' Construimos la cadena de conexión Ole Db,
' para conectarnos con la base de datos de Access
'
Dim connString As String = _
"Provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source = C:\Mis documentos\Bd1.mdb;"

' Creamos un nuevo objeto Connection
'
Dim cnn As New OleDbConnection(connString)

Try
' Creamos la consulta SQL de creación de tabla,
' indicando que vamos a utilizar el driver
' ODBC de Microsoft SQL Server
'
Dim sql As String = _
"SELECT * INTO [Nombre_Tabla_Access] " & _
"FROM [Nombre_Tabla_Base_SQLServer_2000] " & _
"IN ''[ODBC;DRIVER={SQL Server};" & _
"Server=Nombre_Instancia_Servidor_SQL;" & _
"Database=Nombre_Base_Datos_SQL_2000;" & _
"UID=Cuenta_Usuario;" & _
"PWD=Contraseña_Usuario]"

' Configuramos un objeto Command para ejecutar
' la consulta SQL de creación de tabla
'
Dim cmd As New OleDbCommand(sql, cnn)

' Abrimos la conexión
cnn.Open()

' Ejecutamos la consulta
Dim n As Integer = cmd.ExecuteNonQuery()

MessageBox.Show("Se creado satisfactoriamente la tabla." & _
ControlChars.CrLf & _
"Número de registros afectados: " & n.ToString, _
"Crear archivo dBASE")

Catch ex As OleDbException
MessageBox.Show(ex.Errors(0).Message)

Catch ex As Exception
MessageBox.Show(ex.Message)

Finally
' Cerramos la conexión
cnn.Close()
cnn = Nothing

End Try

En este supuesto, en lugar de EXPORTAR, estarías IMPORTANDO a la base de
Access los datos de una tabla contenida en una base de datos Microsoft SQL
Server 2000.

¡Eso es todo!

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.

Preguntas similares