Forum Discussion

Itdontwork's avatar
Itdontwork
Copper Contributor
Jan 06, 2024

ODBC linked table DAO Connect property broken.

This just cropped up on one computer.  I expect to see it on more.  Obviously a broken MS update.

 

For an ODBC linked table, the DAO Connect property (of the TableDef object) returns the connection string.  It's broke.

 

The string is supposed to begin thus (and always did so):  "ODBC;DRIVER..."

 

Not any more it doesn't, not on this one machine, it now begins "ODBCDRIVER..." (missing semi-colon) which makes it an invalid connection string.

 

If you look in MSYSOBJECTS, the connection string begins "DRIVER".  No "ODBC".  So, "ODBC" is obviously prepended by DAO when the Connect property is referenced.  But now it fails to prepend the semi-colon.

 

Easy to fix.  Just replace "ODBCDRIVER" with "ODBC;DRIVER".  Annoying though: I have a bunch of live systems which now need to be fixed.

 

Hoping this helps someone.

4 Replies

    • Itdontwork's avatar
      Itdontwork
      Copper Contributor
      Thank you, but I have users who need a working system on Monday so I'm still going to lose my Sunday rolling out a workaround.

      Why on earth was Microsoft even messing around with something which is (frankly) obsolete and has been stable for literally decades?
      • isladogs's avatar
        isladogs
        MVP
        The missing semicolon was probably an unintended result of another unrelated change. There is no evidence so far that MS was 'messing around' with connection strings. From my tests, both DSN & DSN-less links created in code or through the LTM still work though the connect string is clearly wrong in the Immediate window. However, if links no longer work for you, I'd suggest rolling back to v2311 rather than rewriting code
        Also, in what way is it 'frankly obsolete'?
        Suggest you read the article at https://www.accessforever.org/post/missing-semicolon-in-odbc-connect.

Resources