Estas *seguro* que el problema es el tipo de datos? No veo porque razon deberia. Aunque hay veces que ciertos tipos de datos pueden causar pequeños problemas, son casi siempre debido a que no se entiende su uso correcto.
Seria bueno que aislaras la causa concreta del error, por ejm, creando una copia de la tabla que tiene el lio, concentandote a ella, cambiando el tipo de datos, etc... hasta dar exactamente con la causa del error. Tambien quizas probar con otro driver (a sql server hay como 3 formas de conectarse
http://www.connectionstrings.com/sql...der-for-ole-db)