Je viens de recevoir une solution de Massimo Di Pierro sur le forum Web2Py . Il en a déduit la cause et a fourni une solution de contournement.
Je ne sais pas si le "import pyodbc" est nécessaire. Une fois le pilote attribué, il est resté, même après un redémarrage du serveur.
# Test if the mssql driver is assigned. Sets it up if it isn't.
import pyodbc
from gluon.dal import MSSQLAdapter
if not (MSSQLAdapter.driver):
MSSQLAdapter.driver = globals().get('pyodbc',None)
db = DAL('mssql://testUser:[email protected]/testDB')