SQL1159 Error de inicialización con DB2.NET Data Provider, código de razón 7, tokens 9.5.0.DEF.2, SOFTWARE / IBM / DB2 / InstalledCopies
db2-luw vista64 (10)
Estoy tratando de obtener el proveedor de datos de DB2 desde una aplicación .Net de 32 bits para conectarme a DB2 ejecutándose como una aplicación de 32 bits en Vista 64 (¿es bastante confuso hasta el momento)? Desafortunadamente, recibo el siguiente error:
SQL1159 Error de inicialización con DB2 .NET Data Provider, código de razón 7, tokens 9.5.0.DEF.2, SOFTWARE / IBM / DB2 / InstalledCopies
Hay varias publicaciones en el foro de IBM que lo mencionan, pero poca orientación útil. Alguien ha experimentado esto antes? ¿O tienes mejores ideas para arreglarlo?
¿Estás obligado a ejecutarlo como x86? Tuve problemas similares con las aplicaciones web en el servidor web de desarrollo de Visual Studio (que es x86), pero el cambio a IIS (x64) funcionó para mí. Desde que estaba implementando en IIS x64, lo llamé un día en ese momento.
Traté de buscar con Filemon y Regmon, pero no obtuve ningún error de claves negadas o perdidas. Si tuviera que volver a mirar, verificaría HKLM / Software / WOW6432Node, adivinando que el instalador escribe en el nodo x64 HKLM / Software, pero no en el x86.
Recuerdo vagamente tener un problema de sonido similar con el controlador DB2 for as / 400 oledb al intentar configurar un servidor vinculado desde sql 2005 al as / 400. Fue un problema de permisos y finalmente descubrí que solo las cuentas de servidor sql (no Windows) podían usar el servidor vinculado porque (creo) luego el controlador se estaba cargando usando las credenciales de sql en lugar de las suplantadas. Si funciona cuando se "ejecuta como" administrador, entonces tiene que haber permisos.
Supongo que ha visto la descripción de SQL1159 en la Guía de referencia de DB2 .
Desafortunadamente para usted, los códigos de razón se detienen en 6 y no continúan hasta 7. Sí dice:
Respuesta del Usuario: Hubo un problema con su instalación de DB2. Si esta es la primera vez que se instala DB2 en esta computadora, revise los registros de instalación para detectar posibles errores y ejecute una reparación de DB2 desde la miniaplicación Agregar o quitar programas del panel de control. La ubicación predeterminada de los registros de instalación es la carpeta Mis documentos / DB2LOG del usuario que realizó la instalación. Si esto no resuelve el problema, póngase en contacto con el soporte de IBM y proporcione el código de razón asociado con este mensaje junto con los registros de instalación.
Así que supongo que intentaré reinstalarlo y, si el problema persiste, deberá ponerse en contacto con IBM.
Lo siento, sé que eso no es de mucha ayuda.
Desinstalé la versión anterior de 32 bits, reinstalé como de 64 bits, y ahora recibo un error completamente diferente. Se menciona que requiere la reparación del FP2, pero dado que estoy usando Express-C, no puedo instalar el fixpack (IBM no proporciona fixpacks para productos DB2 gratuitos). De todos modos, gracias por la ayuda. Al menos puedo acercarme a conectar ahora. :)
Encontré este error en un servidor Windows 2003 x86 también. Originalmente mi problema era
No se puede encontrar el proveedor de datos de .net framework solicitado. es posible que no esté instalado.
lo que llevó a comentarios que c: / Windows / Microsoft.NET / Framework / v2.0.50727 / CONFIG / machine.config carecía de las entradas necesarias para la sección DbProviderFactories. Y, de hecho, no había entradas de IBM DB2 allí. Cuando agregué manualmente una entrada, me encontré con este error tuyo, sugiriendo que hay mucho más que editar machine.config.
De manera similar, desinstalé el conjunto de controladores de IBM DB2, reinicié el sistema, lo reinstalé y lo recibí inicializando las conexiones correctamente.
Solo como una nota rápida ...
@Micheal: el enlace que tenía para SQL1159 es para los documentos de la Versión 9.1
La documentación de la Versión 9.5 sube al código de razón 9
http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/topic/com.ibm.db2.luw.messages.sql.doc/doc/msql01159n.html
Desafortunadamente, creo que hay un décimo código de razón que no está documentado allí, pero está en un tema de developerWorks
http://www.ibm.com/developerworks/wikis/display/DB2/DB2+and+.NET+FAQ#DB2and.NETFAQ-WhatisSQL1159InitializationError%3F
Tuve el mismo problema con el proveedor de DB2 .net.
Si tiene Windows de 64 bits, descargue e instale IBM Data Server Runtime Client (Windows AMD 64) Versión 9.5
de _https: //www14.software.ibm.com/webapp/iwm/web/preLogin.do? lang = en_US & source = swg-idsrc11 & S_TACT = appddnet & S_CMP = ibm_im
Si ejecuta su programa, obtendrá la siguiente excepción
Excepción no controlada: excepción de System.Overflow: operación aritmética resultó en un desbordamiento. en IBM.Data.DB2.DB2ConnPool.Open (conexión DB2Connection, StringszConnectionStringIn, DB2ConnSettings & ppSettings, Object & ppConn) en IBM.Data.DB2.DB2Connection.Open ()
Descargue e instale la solución para su versión db2 desde http://www-01.ibm.com/support/docview.wss?uid=swg1IZ09579
esto solucionaría el problema.
Instale DB2 Express-C para win x64, versión 9.7.1 y funcionaría
Tuve un problema similar, mi máquina es de 64 bits. Instalé tanto clientes de tiempo de ejecución db2 de 32 bits como de 64 bits, establecí el marco de destino a 32 bits en mi proyecto, funcionó perfectamente para mí. Pude ejecutar la aplicación en otras máquinas de 64/32 bits, solo necesitan instalar los 32 bits o los 64 bits del cliente de tiempo de ejecución de db2, según el sistema operativo de la máquina.
Sí. Esto debería suceder en Windows 7 y no en Windows XP. La alma es:
- haga clic derecho en el proyecto en el explorador de soluciones
- Propiedades
- Pestaña Compilar (lado izquierdo)
- Desplácese hacia abajo para ver el botón de opción de compilación avanzada
- Cambia la CPU de destino desplegable a x86.