PDA

View Full Version : ODBC Microsoft Access Driver problem


wysiwyg
1st Jan 2003, 15:42
I have just been given a piece of software that runs fine on a friends computer. Their PC is a modern one running XP and Microsoft Access as is mine. The software is a training package that consists of graphics and audio files that take you through the various sections. There appears to be some sort of viewer that opens up fine and allows you to chose from various sections. The viewer runs from the hard drive while the other info is on CD-ROM. When you select a section the following message appears in a box with an ok button underneath it.

SQL STATE: S1C00
NATIVE: 106
MESSAGE: [MICROSOFT] [ODBC MICROSOFT ACCESS DRIVER] OPTIONAL FEATURE NOT IMPLEMENTED

When you click ok the following message appears with an ok button under it.

SQL STATE: S1010
NATIVE: 0
MESSAGE: [MICROSOFT] [ODBC DEVICE MANAGER] FUNCTION SEQUENCE ERROR

If you click ok the same message appears again.

Anyone got any ideas?
Many thanks in anticipation.

wysiwyg
1st Jan 2003, 21:19
Right, a bit more info now I have tried a few different things. I have run the program reasonably successfully on my other PC (a laptop) which is running windows 98 and doesn't have Access installed. From this I have deduced that Access installation is not necessary. The problem I have with running this from the laptop is that it requires a higher resolution than my laptop can give (laptop best is 800 x 600) so I can't see the whole picture!
Some research on the SQL STATE code implies that the SQL installed in my modern XP machine cannot communicate with the older database of the program.
Can I and should I try to downgrade my SQL to an older version (from 2000 to version 7 perhaps)?

Gertrude the Wombat
2nd Jan 2003, 22:18
One might feel inclined to ignore the "optional feature not implemented" message.

The "function sequence error" indicates a bug in the application, in that it calls ODBC functions in an illegal order.

Now, why does this only happen sometimes on some computers? Just a few thoughts (not quite at random, as I have done some ODBC programming):

(1) at different times and/or on different machines an application that's trying to be too clever for its own good might end up doing different things with stuff like internal caching and thread handling, and only get it wrong sometimes (because it sometimes takes different paths through the code even when the end user thinks he's running the same query)

(2) I get the impression that some bridge products have bugs in them which can cause this, even if the application programmer thought she'd done the right thing; this could be the explanation if the application is not written in something like C++ and calling the ODBC driver manager directly.