Pregunta

Mi empresa tiene una aplicación de terceros que se ejecuta en una base de datos de Progress . He estado creando una aplicación sobre su base de datos utilizando una conexión ODBC.

Una de las " peculiaridades " Progreso es que no respeta los anchos de columna de SQL, por lo que permitirá 100 caracteres en una columna definida como varchar (50). Al leer estos datos a través de ODBC, aparece el siguiente error:

  

Columna test_column en tabla   PUB.test_table tiene un valor que excede su   Longitud máxima o precisión.

Los técnicos de soporte técnico de la compañía que construye la aplicación me indicaron que agregue algunos indicadores de trabajo en el registro para la conexión ODBC. Sin embargo, no puedo encontrar ninguna documentación sobre qué harán estas banderas o cuáles son los posibles valores. son. Las claves de registro son

  

KEY_CURRENT_USER- > Software- > ODBC- > ODBC.INI- > MyODBCConnectionName- > WorkArounds   KEY_CURRENT_USER- > Software- > ODBC- > ODBC.INI- > MyODBCConnectionName- > WorkArounds2

Google me ha encontrado otros problemas que las personas han resuelto al agregar estas banderas con valores específicos (incluido mi favorito personal de The Daily WTF ) pero no puedo encontrar ningún lugar que me diga qué hacen realmente las banderas. ¿Sabes?

¿Fue útil?

Solución

El enlace de @ tom-bascom ya no funciona porque Progress movió sus KB. el comentario de @ stefan-moser sobre la pregunta de @mdb es apropiado.

Según Capítulo 11 Opciones de WorkAround del DataDirect Connect Series para referencia de ODBC

WorkArounds2 = 8192. Habilitar esta opción hace que Microsoft Access no pase el error -7748. Microsoft Access solo solicita datos como un SQL_C_WCHAR de dos bytes, que es un tamaño de búfer insuficiente para almacenar el carácter UCS2 y el terminador nulo; por lo tanto, el controlador devuelve una advertencia, " 01004 Datos truncados " y devuelve un carácter nulo a Microsoft Access. Microsoft Access luego pasa el error -7748.

referencias:

Otros consejos

Es una solución para:

'Este error ocurre con Microsoft Access 2000 cuando se usan los controladores Connect for ODBC para enlazar a una tabla que tiene uno o más índices asociados.'

DataDirect Support KB

El archivo README para DataDirect Connect para ODBC ( un controlador ODBC basado en Unix) contiene una lista de soluciones en las " Driver WorkAround Options " sección del documento.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top