in reply to Update: Using Perl to connect to an Access 10 database

It's been quite some time since I've done ODBC stuff, but on Windows, you have to create your DSN in two locations:

64 bit - run %systemdrive%\Windows\SysWoW64\odbcad32.exe

32 bit - run %systemdrive%\Windows\System32\odbcad32.exe

Same binary name, but ridiculous locations for them. Where's the consistency!? ;)

Replies are listed 'Best First'.
Re^2: Update: Using Perl to connect to an Access 10 database
by pryrt (Abbot) on May 30, 2019 at 21:49 UTC
    64 bit - run %systemdrive%\Windows\SysWoW64\odbcad32.exe
    32 bit - run %systemdrive%\Windows\System32\odbcad32.exe
    

    Like many people, you got your bits-vs-folder confused, because of Microsoft's insane naming scheme. SysWow64 means "Windows 32-bit on Windows 64-bit", and is the folder that holds the 32bit executables and DLLs for use on a 64bit OS. System32 kept it's historic name, even though in 64-bit OSes, it's the directory for the 64bit system files. See File System Redirector in MS online docs for even more.

      Thanks pryrt,

      You're absolutely right. Good grief!

        Thank you for your comments.
        This is an area I have never been to before so I am having trouble understanding the implications of what you have said. For example "you have to create your DSN in two locations:" sadly means nothing to me but I guess something may need to be done to the line
        my $dsn = 'driver=Microsoft Access Driver (*.mdb, *.accdb);dbq='.$dbfi +le;

        I have found that I do have odbccad32.exe and odbc32.dll in both the SysWOW64 and System32 directories. I am using Windows 10 OS.
        I get the impression that I may have to do something so that the correct odbccad32.exe is used?
        Is that correct and if so can you point me to some web page that has more 'clues'?