Parece que no soy el único con este problema, pero no parece haber un problema de este tipo.Campos de Bool anulables en las tablas vinculadas de MS Access
Estoy trabajando en Access 2010, utilizando una tabla vinculada a una base de datos de SQL Server 2005 (a través de un conducto ODBC de SQL Server). En esa tabla, uno de los campos booleanos está marcado como anulable, y varios registros en esta tabla de hecho tienen un nulo en el campo. Hasta aquí todo bien.
En viene Acceso, y tan pronto como abra la tabla vinculada, Access muestra un 0 (falso) en lugar de una celda en blanco (problema # 1). Y si intenta modificar algo en el registro, recibirá un mensaje de error que dice que el registro fue modificado por otra persona y sus cambios no pueden guardarse. Este último problema se debe al hecho de que Access no tolera los campos de bool nullable, y se vuelve un poco loco cuando intenta guardar el valor.
Mi investigación muestra que esto podría tener algo que ver con Access utilizando Jet en segundo plano para conectarse a la base de datos de SQL Server, y Jet aparentemente no admite boles nulables. No parece haber una forma de configurar Jet para que lo admita (aunque tal vez sí, si se está conectando en el código). También pensé que MS estaba reemplazando a Jet con otra tecnología utilizada en Office 2010 (ACE, creo), pero no puedo decir si esto es realmente lo que usa Access. En cualquier caso, no puedo encontrar opciones configurables con respecto a los booleantes nulables.
Por último, este problema parece haber sido criado con la EM hace un corto tiempo, pero no hay una respuesta en su final: https://connect.microsoft.com/SQLServer/feedback/details/617339/null-bit-fields-produce-spurious-ms-access-errors-when-using-the-native-odbc-driver?wa=wsignin1.0#tabs
Me pregunto si alguien más por ahí se ha topado con esto y encontrado una solución. Y antes de sugerirlo, quitar la opción que no admite nulos y establecer todos los nulos en 'falso' no es realmente una opción en nuestro caso. Para nosotros, null es en realidad un estado válido y muy diferente de 'falso'.
Thx!
Este es un problema conocido desde Access 97: http://support.microsoft.com/kb/278696/EN-US. Como nada ha cambiado en los últimos 14 años, no esperaría ninguna solución pronto ... – Heinzi