Problemas de acceso a datos para orígenes de datos de Microsoft SQL Server
Utilice las sugerencias de resolución de problemas para ayudarle a acceder a orígenes de datos de Microsoft SQL Server.
¿Qué problema tiene cuando accede a la base de datos Microsoft SQL Server?
- El controlador de Microsoft SQL Server para JDBC V2.0 deja de responder tras un error de conexión
- Al acceder a la base de datos SQLServer se recibe ERROR CODE : 20001 y SQL STATE: HY000
- La aplicación no se ejecuta correctamente con el mensaje "No se puede encontrar el procedimiento almacenado..." al acceder una la base de datos Microsoft SQL Server
- ERROR CODE: SQL5042 cuando se ejecuta una aplicación Java
Se produce la excepción JAVAX.TRANSACTION.XA.XAEXCEPTION con el error: XP_SQLJDBC_XA_INIT
El controlador de Microsoft SQL Server para JDBC V2.0 deja de responder tras un error de conexión
Si está utilizando la versión 2.0 del controlador de Microsoft SQL Server para JDBC (otras versiones no tienen el problema), es posible que vea que deja de responder al producirse un error de conexión. El arreglo de prueba siguiente de Microsoft soluciona este problema: http://support.microsoft.com/kb/977924
Al acceder a la base de datos SQLServer se recibe ERROR CODE : 20001 y SQL STATE: HY000
ERROR CODE: 20001
SQL STATE: HY000
java.sql.SQLException: [Microsoft][SQLServer JDBC Driver]
[SQLServer]xa_open (0) returns -3
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source) ...
at com.microsoft.jdbcx.sqlserver.SQLServerDataSource.getXAConnection
(Unknown Source) ...
- Vaya a Servicios. O bien, pulse . Windows
- Compruebe si se ha iniciado el servicio Coordinador de transacciones distribuidas o DTC.
- Si no, inicie el servicio Coordinador de transacciones distribuidas.
La aplicación no se ejecuta correctamente con el mensaje "No se puede encontrar el procedimiento almacenado..." al acceder una la base de datos Microsoft SQL Server
Este error se puede producir porque los procedimientos almacenados para la característica JTA (Java™ Transaction API) no estén instalados en Microsoft SQL Server.
Para corregir el problema, repita la instalación de los procedimientos almacenados para la característica JTA, según se describe en la guía de instalación del controlador JDBC.
ERROR CODE: SQL5042 cuando se ejecuta una aplicación Java
- Se utiliza un controlador de tipo 2 (aplicación) que se ejecuta en la pasarela con OS 390
- La aplicación es una aplicación XA.
- Compruebe dbm cfg para ver que SPM no se ha iniciado en la pasarela.
- Asigne un puerto y establezca la variable db2comm en TCPIP.
- Actualice el valor de dbm cfg SPM_NAME para que utilice el nombre de la máquina.
- Inicie SPM en la pasarela.
![[Windows]](../images/windows.gif)
Se produce la excepción JAVAX.TRANSACTION.XA.XAEXCEPTION con el error: XP_SQLJDBC_XA_INIT
Si utiliza una base de datos Microsoft SQLSERVER en Windows Server 2003, y desplaza un clúster de servidores SQL de un nodo a otro, o cierra el clúster, el valor
de Servicios de componentes de Windows es posible que se restablezca y pase a estar inhabilitado. Cuando se produce este problema, puede producirse una excepción JAVAX.TRANSACTION.XA.XAEXCEPTION con el error: XP_SQLJDBC_XA_INIT ya que el controlador JDBC ya no está habilitado para las transacciones XA.- En el escritorio de Microsoft Windows, pulse .
- Expanda la vista de árbol para localizar el sistema en el que desea activar el soporte para transacciones XA, por ejemplo, Mi PC.
- Visualice el menú contextual para el nombre del equipo y pulse .
- Pulse y, a continuación, establezca el valor de en un periodo de tiempo que sea adecuado para su entorno. El valor mínimo recomendado es de 180 segundos.
- Pulse y, a continuación, pulse .
- En , seleccione para habilitar este soporte.
- Pulse para guardar los cambios.

- KB899756: Sólo Windows 2003. MSDTC no detecta la terminación del proceso, y MSDTC no puede establecer valores de tiempo de espera para transacciones XA en Windows Server 2003.
- KB318818: El rendimiento es más lento cuando se utilizan transacciones XA con SQL Server.