sql >> Base de Datos >  >> RDS >> Sqlserver

la consulta del servidor sql se está ejecutando lentamente desde java

Tuve un problema similar, con una solicitud muy simple (SELECT . FROM . WHERE =.) que tardaba hasta 10 segundos en devolver una sola fila cuando usaba una conexión jdbc en Java, mientras que tomaba solo 0.01 s en sqlshell. El problema era el mismo si usaba el controlador MS SQL oficial o el controlador JTDS.

La solución fue configurar esta propiedad en la URL de jdbc:sendStringParametersAsUnicode=false

Ejemplo completo si está utilizando el controlador oficial de MS SQL:jdbc:sqlserver://yourserver;instanceName=yourInstance;databaseName=yourDBName;sendStringParametersAsUnicode=false;

Instrucciones si usa diferentes controladores jdbc e información más detallada sobre el problema aquí:http://emransharif.blogspot.fr/2011/07/problemas-de-rendimiento-con-controladores-jdbc.html

En mi caso, tenía más de 30 millones de registros en la tabla desde la que estaba buscando. La duración para completar la solicitud pasó de más de 10 segundos a aproximadamente 0,01 s después de aplicar la propiedad.

¡Espero que esto ayude a alguien!