Creación del DSN en nuestros ODBC de 32/64 bits

0 comantarios 19 Vistas

Una vez instalado el driver adecuado a nuestro Office 32 ó 64 bits (el que sea 32 ó 64 depende del Office que usemos no del S.O.) procederemos a crear el DSN en nuestra colección de ODBC.


Incluyo imágenes de cómo lo he configurado. Datos principales y pestaña Connection:




y en la pestaña Cursors/Results:



– es aconsejable marcar el valor:
   Allow big result sets

– e imprescindible hacerlo con:
   Return matched rows instead of affected rows

si no marcamos este último nos aparecerá el error:





Si necesitásemos automatizar la creación del DSN lo podemos hacer mediante VBA. En un módulo independiente:

Option Compare Database
Option Explicit

#If Win64 Then
     Private Declare PtrSafe Function SQLConfigDataSource Lib "ODBCCP32.DLL" ( _
         ByVal hwndParent As Long, ByVal fRequest As Long, _
         ByVal lpszDriver As String, ByVal lpszAttributes As String) As Long
#Else
     Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" ( _
         ByVal hwndParent As Long, ByVal fRequest As Long, _
         ByVal lpszDriver As String, ByVal lpszAttributes As String) As Long
#End If

Function CreaDSN_MySQL8() As Boolean
     Dim Driver As String
     Dim Attributes As String
     Const vbAPINull As Long = 0& ' Puntero NULL
     Const ODBC_ADD_DSN = 1 ' Tipo fRequest
    
     Driver = "MySQL ODBC 8.0 ANSI Driver"
    
     Attributes = "192.168.1.125" & Chr$(0) & _
         "DESCRIPTION=Esta es la descripcion DSN" & Chr$(0) & _
         "DSN=MARCH-TECSYS" & Chr$(0) & _
         "DATABASE=cdt_test" & Chr$(0) & _
         "PWD=****" & Chr$(0) & _
         "UID=JESUS" & Chr$(0) & _
         "PORT=3306" & Chr$(0) & _
         "BIG_PACKETS=1" & Chr$(0) & _
         "FOUND_ROWS=1" & Chr$(0)

     CreaDSN_MySQL8 = SQLConfigDataSource(vbAPINull, ODBC_ADD_DSN, Driver, Attributes)
End Function

La descripción de los atributos y valores la podemos encontrar en la siguiente dirección, así como todo lo relativo a MySQL:
     Site MySQL

Mis agradecimientos a la comunidad de acceseros de AUGE en general y a Xavi en particular por el código, bueno lo que me pasó era mucho más completo y extenso, yo le he dejado en lo imprescindible.

Deja un comentario

Jesús Mansilla (Mihura)

Jesús Mansilla (Mihura)

Jesús Mansilla Castells es el fundador de Tecsys Proyectos Informáticos S.L. Lleva trabajando en el ámbito de la informática desde 1984, inicialmente como empleado en varias empresas y, desde 1995, como profesional independiente. Su experiencia abarca desde los primeros ordenadores ZX80 y HP programables hasta sistemas IBM con COBOL y RPG, pasando por el Univac de la Politécnica de Madrid y los primeros Apple.
La Web de Jesús

Newsletter

El Blog de Juanjo Luna
Todo sobre Access, Excel, Sharepoint, IA y tecnología en general

Este sitio web utiliza cookies para mejorar su experiencia. Suponemos que está de acuerdo, pero puede darse de baja si lo desea. Aceptar Leer más