views:

897

answers:

1

I'm working on building a .NET WinForms application to replace a series of forms in a Microsoft Access (insert collective groan here) database. In an effort to get the initial version finished, I am attempting to use the existing queries rather than digging into the data model and its obvious design problems.

I'm calling the queries using the OleDbCommand object and treating them like stored procedures. This works fine on the workstations we've used to test the application in our office, but fails with a "System.Data.OleDb.OleDbException: Too many fields defined" error when run on the client's computer. Both environments are running MS Access 2003, so the cause of the error on the client's computer is not apparent.

I found a post at http://www.eggheadcafe.com/conversation.aspx?messageid=33475714&threadid=33453796 that says this can happen if the number of columns exceeds 127. A couple of the tables being used in the queries have more than this number of columns (almost a complete lack of normalization, I know). I believe this is the cause, but can't explain why the error does not occur in our office. Any suggestions for resolving this short of splitting the data access into multiple queries?

+1  A: 

I do not have understanding of why this could be occurring.

However, this could be related to MDAC components installed in your office vs client computer (i.e MDAC components include JET oledb driver).

This might help.

shahkalpesh
Thanks for the tip. I noticed the client's computer is running MS Access 2003 SP2 and we're running SP3 in our office. I'll post my findings for posterity after we update the client's PC.
Andrew Dyer