DirList2ODBC - Known Bugs

 

Bug Earliest
Version
Fixed
Version
Description
SPSS gets a SQL compliance error 1.00 1.50 A minor bug in the SQL checking routines caused the driver to reject the given SQL string. Apparently, Access was unaffected by it and thus went unnoticed. This was fixed in 1.50.
"Not enough columns" during INSERT 1.49 1.50 When inserting a record into tblDirEntry, the server says that not enough input columns exist. This was due to an oversight while fixing the "Not enough columns during UPDATE" bug. Versions 1.50 and higher no longer have this bug.
"Not enough columns" during UPDATE 1.00 1.49 When updating tblDirEntry with a blank value for FirstName or LastName and some values for other fields, the server says that not enough input columns exist. This was due to checking for whether or not the request string was blank before writing a delimiter. Since a blank value for FirstName or LastName would do this, the first delimiter is not written. This was fixed in 1.49 by checking a boolean variable rather than the length of the request string.
Access violation while sorting 1.46 1.47 When sorting, version 1.46 crashes when the very last word in the SQL string is DESC. This was due to a rather silly bug and was fixed in 1.47.
Duplicate field failure 1.00 1.45 When a query has a field selected more than once in a recordset, the driver did not fill the duplicated columns. In Microsoft Access, various queries returned "Row position does not exist in the recordset" because Access repeats columns sometimes for unknown reasons. This bug was fixed in version 1.45 by copying the pointer arrays and the row counts over to the duplicated columns after reading the recordset from the server.
Cannot change usernames 1.00 n/a If you specify more than the Username in the WHERE clause when updating tblDirEntry, the server automatically uses an alternate function that forbids Username changes for referential integrity. Since Username is in the WHERE clause anyway, the driver can be modified to send only the Username over to the server so that it can change the Username properly. This might be done in a future release.
Checkboxes change on insertion 1.00 1.44 When creating new records, the checkboxes in Microsoft Access might be off as a default. After inserting it, it magically changes to a check. This bug was fixed in version 1.44 on most of the tables except tblClass, which is probably being reset in the server (this will probably be fixed in a future server release).
Manual primary keys are annoying 1.00 1.44 Although several functions could tell Microsoft Access what the primary keys are for each table, Access decides not to call them and instead relies upon SQLStatistics, which is supposed to be used for index definitions. This bug was fixed in version 1.44 by claiming that indexes exist for the primary keys, which is actually sort-of true anyway.
Access violation during updates 1.00 1.44 If you tried to change a field that the driver was originally designed to not let you change, the driver properly generated an error and cleared memory but forgot to cancel the function. As a result, the remaining code in the function tried to access freed memory and caused a crash. This bug was fixed in version 1.44.
Multiple delete error 1.00 1.44 When deleting more than one directory entry, Access reports that more than one record was deleted when only one should have been deleted. Fortunately, Microsoft Access is falsely reporting this due to a bug in the ODBC driver that failed to reset the update/delete counter to zero between UPDATE and DELETE statements on the same recordset. This bug was fixed in version 1.44.
ADO and MS-IIS4 freeze 1.00 1.43 This was related to the driver's failure to unlock a critical section object when encountering parameter errors.  When another web server thread tried to access the same object through an ODBC call, the driver locked up due to the incorrect lock count.  This bug was fixed in version 1.43.
Access violation in Access 2000 1.00 n/a When setting LONG VARCHAR data to NULL in Microsoft Access 2000, the driver causes an access violation and Windows terminates Microsoft Access 2000.  This bug has a medium priority and will be investigated in the near future.  The driver does not crash under the same conditions in Microsoft Access 97.  To work around this problem with Access 2000, enable "Use CHAR for all text-based data" in the DSN's setup and re-link the tables in Access 2000.
Access gets "stuck" 1.00 1.48 If a form that uses tblDirEntry was left open for a long time without being used, Access 97 might have appeared to freeze when trying to access it after the long period of inactivity. Furthermore, rapid accesses for a lot of data caused the driver to freeze, too. This was caused by a bug in Microsoft's CSocket object in the MFC that spun off into an infinite loop, waiting for an event that was dropped due to another bug in Microsoft's extended socket event handling routines. Versions 1.48 and higher of DirList2ODBC no longer use Microsoft's MFC for socket handling and as a result the driver performs noticeably faster and does not lock up anymore.
AS in FROM clauses 1.00 1.50 The driver does not support the actual AS word when used in a FROM clause, but this will be fixed in the near future.  To work around this bug, simply omit the AS word when making aliases in FROM.  Versions as of 1.50 now implement AS in a FROM clause.
FROM alias failure 1.00 1.50 When specifying an alias that also happens to be the name of a valid table but is not the same name as the table being aliased, the table with the same name as the alias will be used instead, causing a multiple-table error.   This bug is related to the "AS in FROM clauses."  As of version 1.50, table name lookups now conform to the standard, making something like "SELECT `hi`.`Username`, meow.firSTnAMe, tblIndeXINFO.hasWebSITE, Hi.checkwEbsitE FROM tblDirEntry hi, tblDirEntry meow, tblDirEntry tblIndexInfo WHERE ((tblIndexInfo.username between "hello" AND "purr") OR (lastName LIKE "_aw%ce"));" actually work (note that BETWEEN, LIKE, and IN are also implemented in 1.50 and higher).
Locking not implemented 1.00 n/a Index locking is not actually implemented by the ODBC driver.  The server supports index locking, and this feature may be implemented in the near future.  To avoid shared update problems, ensure that only one user is modifying a given index at a time.
ORDER BY in tblDirEntry 1.00 1.46 The ORDER BY clause in tblDirEntry was not implemented in versions 1.45 and below. Beginning with version 1.46, ORDER BY actually works. Version 1.47 corrected a small bug when DESC appears at the end of a SQL string.
LIKE and IN not supported 1.00 1.50 Although BETWEEN was implemented, LIKE and IN were not.  Versions 1.50 and higher implement LIKE, and a future version might implement IN. Not all LIKE expressions are supported if your server is running a version below 2.4, but "hi%" and "%hi%" will work; in versions 2.4 and higher, all possible LIKE expressions are supported.
BETWEEN does not work correctly 1.40 1.50 Extra code introduced in 1.40 made BETWEEN operations return incorrect recordsets. This was fixed in 1.50.
No AdminMode with Admin priviledges 1.00 1.50 If you are a user other than Administrator, then the AdminMode flag was hard-coded to off. Versions 1.50 and higher test the Admin priviledge upon logging on and sets AdminMode if it worked. Note that versions 1.50 and higher may cause a lot of "Access Denied" messages for NOOP if auditing for NOOP is enabled. To get around this, simply disable NOOP auditing (the Access database example doesn't let you enable NOOP auditing anyway, but could if modified a little).
NOT and tblDirEntry 1.00 n/a When SELECTing from tblDirEntry, specifying NOT before an opening parenthesis is currently not supported.  To work around this bug, do the opposite of everything in the parenthesis to avoid using NOT.  A fix in the driver would basically do the same thing for you, but this has not been programmed yet.   This design exists due to the design of the DirList2 Server's query interface.   This bug has a low priority.

 

Copyright (c) 2000 Steven Lawrance
Copyright (c) 1999-2000 Bryant College
Written by Steven Lawrance
DirList2 Server Version: 2.6
DirList2ODBC Version: 1.51
Last Revision: 10-08-2000