elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Consulta SQLSERVER no funciona en JAVA
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Consulta SQLSERVER no funciona en JAVA  (Leído 1,330 veces)
wilmer30

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Consulta SQLSERVER no funciona en JAVA
« en: 6 Enero 2016, 16:15 pm »

Buenas,

Me estoy rompiendo la cabeza intentando resolver este problema. tengo este código:
Código:
//            sql = "select p.igr_id,a.al_id,a.ubi_id,p.pro_itemname,pro_itemcode,p.pro_unidad,pro_color,d.deta_id,d.deta_cantidadsolicitada, \n" +
//                    "p.pro_descripcion, p.pro_genero, p.pro_talla, p.pro_logo,p.pro_material,p.pro_vidautil,a.al_cantidad,a.al_costo,tr.trp_nombre,\n" +
//                    "case when exists \n" +
//                    "(select * from tab_detalleasignacion di \n" +
//                    "join tab_solicitud si on si.sol_id = di.sol_id \n" +
//                    "join tab_almacen ai on ai.al_id = di.al_id join tab_producto pin on pin.pro_id = ai.pro_id\n" +
//                    "where pin.igr_id = p.igr_id and si.usu_idempleado = "+usu_id+" and di.deta_estadoprenda = 1 and not exists (\n" +
//                    " select * from tab_detalleasignacion d2 \n" +
//                    " join tab_solicitud s2 on s2.sol_id = d2.sol_id \n" +
//                    " join tab_almacen a2 on a2.al_id = d2.al_id join tab_producto p2 on p2.pro_id = a2.pro_id\n" +
//                    " where p2.igr_id = p.igr_id and s2.usu_idempleado = "+usu_id+" and d2.deta_estadoprenda = 2)\n" +
//                    ") then 1\n" +
//                    "else 0 end restriccion\n" +
//                    "from tab_detalleasignacion d \n" +
//                    "JOIN tab_almacen a on a.al_id = d.al_id \n" +
//                    "JOIN tab_producto p on p.pro_id = a.pro_id\n" +
//                    "JOIN tab_tiporopaprenda tr ON a.trp_id = tr.trp_id\n" +
//                    "JOIN tab_solicitud s on s.sol_id = d.sol_id\n" +
//                    "where d.deta_estadoprenda = 1 AND a.al_estado = 1  and d.sol_id= "+ idsol;
           
            sql = "select p.igr_id,a.al_id,a.ubi_id,p.pro_itemname,pro_itemcode,p.pro_unidad,pro_color,d.deta_id,d.deta_cantidadsolicitada, \n" +
"p.pro_descripcion, p.pro_genero, p.pro_talla, p.pro_logo,p.pro_material,p.pro_vidautil,a.al_cantidad,a.al_costo,tr.trp_nombre,\n" +
"case when \n" +
" ((select COUNT(p3.igr_id) total from tab_detalleasignacion d3 join tab_almacen a3 on a3.al_id = d3.al_id join tab_producto p3 on p3.pro_id = a3.pro_id\n" +
" join tab_solicitud s3 on d3.sol_id = s3.sol_id join tab_usuariohistorial h3 on h3.ush_id = s3.usu_idempleado \n" +
" where s3.usu_idempleado = "+usu_id+" and p3.igr_id = p.igr_id and d3.deta_estadoprenda = 2 group by p3.igr_id) \n" +
" < " +
" (select rt3.u_cantidad from tab_detalleasignacion d3 join tab_almacen a3 on a3.al_id = d3.al_id join tab_producto p3 on p3.pro_id = a3.pro_id\n" +
" join tab_solicitud s3 on d3.sol_id = s3.sol_id join tab_usuariohistorial h3 on h3.ush_id = s3.usu_idempleado \n" +
" join tab_areatrabajocargo at3 on at3.car_id = h3.car_id\n" +
" join tab_ropatrabajo rt3 on rt3.tpe_id = at3.tpe_id and rt3.u_item = p3.pro_itemcode\n" +
" where s3.usu_idempleado = "+usu_id+" and p3.igr_id = p.igr_id and d3.deta_estadoprenda = 2))\n" +
"then 1" +
"else " +
" case when exists \n" +
" (select * from tab_detalleasignacion di \n" +
" join tab_solicitud si on si.sol_id = di.sol_id \n" +
" join tab_almacen ai on ai.al_id = di.al_id join tab_producto pin on pin.pro_id = ai.pro_id\n" +
" where pin.igr_id = p.igr_id and si.usu_idempleado = "+usu_id+" and di.deta_estadoprenda = 1 and not exists (\n" +
" select * from tab_detalleasignacion d2 \n" +
" join tab_solicitud s2 on s2.sol_id = d2.sol_id \n" +
" join tab_almacen a2 on a2.al_id = d2.al_id join tab_producto p2 on p2.pro_id = a2.pro_id\n" +
" where p2.igr_id = p.igr_id and s2.usu_idempleado = "+usu_id+" and d2.deta_estadoprenda = 2)\n" +
" ) then 1\n" +
" else 0\n" +
" end\n" +
"end restrinccion\n" +
"from tab_detalleasignacion d \n" +
"JOIN tab_almacen a on a.al_id = d.al_id \n" +
"JOIN tab_producto p on p.pro_id = a.pro_id\n" +
"JOIN tab_tiporopaprenda tr ON a.trp_id = tr.trp_id\n" +
"JOIN tab_solicitud s on s.sol_id = d.sol_id\n" +
"where d.deta_estadoprenda = 1 AND a.al_estado = 1  and d.sol_id= "+idsol;
           
            logger.info("despues de asignarwil: "+sql);
            PreparedStatement pst = this.getCn().prepareCall(sql);
Dejo la primera forma comentada (que si funciona pero no arroja los datos que necesito) y la segunda (que no funciona pero arroja los datos que si necesito).

Si copio la consulta de la segunda forma al sqlserver y lo ejecuto SI FUNCIONA, pero en JAVA (trabajo con JSF) me dice que no existen registros. Los campos enviados son identicos entre la primera y la segunda forma. Por que la segunda forma no funciona?.

AYUDA POR FAVOR


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
consulta sqlserver con order by dinamico
Bases de Datos
KandiZickZad 4 5,700 Último mensaje 15 Octubre 2010, 05:26 am
por Shell Root
la consulta funciona en el gestor pero no en php [solucionado]
Bases de Datos
soru13 0 1,749 Último mensaje 15 Agosto 2012, 23:30 pm
por soru13
Consulta MySQL no funciona al subirlo al servidor « 1 2 »
Desarrollo Web
KateLibby 10 4,267 Último mensaje 7 Marzo 2013, 13:14 pm
por KateLibby
Problema con una consulta no funciona Distinct « 1 2 3 »
Desarrollo Web
Marciano_79 21 10,895 Último mensaje 6 Abril 2016, 23:27 pm
por Marciano_79
[Consulta] Bluej loop no funciona
Java
lenox32 1 1,935 Último mensaje 21 Junio 2016, 18:16 pm
por Once
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines