Código HTML:
CREATE SP_M_Area_FormQRY( out id CHAR(4), out nombre varchar(50) ) BEGIN SELECT * FROM M_Area; END
| |||
procedimiento alamcenado solo con parametro OUT Saludos a los miembros del foro quiero agradecerles porque siempre me ayudado, ahora esoty con una nueva interrogante se puede hacer un procedimiento almacenado con un "SELECT" Código HTML: CREATE SP_M_Area_FormQRY( out id CHAR(4), out nombre varchar(50) ) BEGIN SELECT * FROM M_Area; END |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT CREATE PROCEDURE SP_M_Area_FormQRY( ) BEGIN SELECT * FROM M_Area; END Buscando encontre esto al parecer esta bien...alguna otra idea |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT Gracias por responder..gnzoloyo entonces como seri el SP creique eso me devolveria un array... Mi duda es concreta hacer un SP que me devuelva un arreglo... de antemano gracias.... me ayudariamucho a solucionar esa pequeña interrogante??... |
| ||||
Respuesta: procedimiento alamcenado solo con parametro OUT La interpretación de una tabla como array es un asunto de PHP, no de MySQL. Para MYSQL toda salida de datos es una tabla. PHP toma la respuesta de MySQL y su librería la interpreta como un array de arrays (donde cada array es el contenido de un registro). En definitiva, es un tema que se maneja en los lenguajes. En cuanto a MySQL y sus SP, el asunto es que no existen en MySQL los arrays. No son parte del tipo de datos manejados por MySQL, a diferencia de Postgre que si tienes arrays. Tampoco existen los tipos de dato ROW o TABLE, por lo que no puedes volcar el resultado de una consulta en una variable de un SP, y tampoco (obviamente) devolverlo como parametro de salida. Explicate qué es exactamente lo que quieres hacer y cómo pretendías manejar el resultado de la consulta. ¿Con un lenguaje de programación o quieres manejarlo dentro del SQL mismo?
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT Hola gnzsoloyo disculpa si no estoy siendo muy claro lo que quiero es hacer algo asi.. "Select Id,Nombre from Area" o "Select * from Area"; pero en un procedimiento almacenado otra pregunta es necesario mandarle parametros de entrada por que quiero me muestre todos los registros.. y luego de que el SP este bien poderlo procesarlo desde java pero ese es otro asunto...de antemano que agradesco por la ayuda que me das... |
| ||||
Respuesta: procedimiento alamcenado solo con parametro OUT Los parámetros se usan sólo si se necesita interactuar con el SP enviando o recibiendo ciertos valores específicos, según el caso. Un SP puede existir sin ellos si no los necesita, como es en tu caso. En tu caso lo que te conviene, si vas a trabajar con Java, es acudir al conector para java y al manual de referncia de MySQL, en el capítulo específico: MySQL 5.0 Reference Manual :: 25 Conectores :: 25.4 MySQL Connector/J o bien: MySQL 5.0 Reference Manual :: 25 Conectores :: 25.5 MySQL Connector/MXJ Yo personalmente no sé cuál es la diferencia entre ambos conectores, pero para el caso te servirán.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT hola entonces el SP estaria bien quiero saberlopara pasar al siguientepunto que es procesarlo en java.. CREATE PROCEDURE SP_M_Area_FormQRY( ) BEGIN SELECT Id,Nombre FROM M_Area; END Otra consulta es necesario hacerle into: SELECT Id,Nombre into codigo,nombre FROM M_Area; creo que es asi.. de agradesco por tu respuesta... |
| ||||
Respuesta: procedimiento alamcenado solo con parametro OUT En ese caso, tanto codigo como nombre deberían ser variables locales del stored procedure, sea declaradas en el cuerpo como los nombres de los parámetros del prototipo (variables de entrada). En el primer caso deberías terminar el SP con un
Código MySQL:
, y en el segundo caso para poder recuperarlas deberías usar parámetros OUT o INOUT para poder recuperarlos.Ver original Ene sta parte se explica como manipular con java los parámetros IN, OUT e INOUT: http://dev.mysql.com/doc/refman/5.0/...ored-procedure
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT Gracias gnzsoloyo.. lo que sucede es que en java no me muestra nada, supongo que es porque no trae ningun registro, por eso quiero saber como seri un procedimiento almacenado para mi caso: CREATE PROCEDURE SP_M_Area_FormQRY( out codigo, out nombre ) BEGIN SELECT Id,Nombre FROM M_Area; Select codigo, nombre; END Seria asi corrigeme por favor ya que tu sabes mas del tema que yo, quiero descartar posibilidades de porque no me muetsra nada y una de esas es el SP, quiero saber si esta bien o que le falta. muchas gracias por tu ayuda. |
| ||||
Respuesta: procedimiento alamcenado solo con parametro OUT No puedes hacer dos SELECT en un sólo SP. El con java sólo puede esperar uno por cada invocación a un SP. Traducción: El problema no está en el SP, sino en lo que estás haciendo con él. Si el SELECT normalmente no devuelve datos es porque no tienes datos en las tablas, si estuviese mal escrito, java debería estar recibiendo un error, posibilidad que tu no debes estar manejando...
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT gracias gnzsoloyo voy a tomar en cuenta tu recomendacion, este problema ya me esta volviendo loco, ahora pasare al java, debo tar manejando algo mal... te aviso cualquier novedad..conclusion mi SP esta bien: CREATE PROCEDURE SP_M_Area_FormQRY() BEGIN SELECT Id,Nombre FROM M_Area; END o es que tengo que asignarles parametros out y hacerles un INTO. |
| ||||
Respuesta: procedimiento alamcenado solo con parametro OUT Fíjate en el manual de referencia de MySQL cuyo link te pasé (¡leelo!), allí muestra perfectamente cómo se pueden leer los valores devueltos en un parámetro OUT. Una sintaxis coherente para un SP con parámetros de salida sería: El resto es programación en Java.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) Última edición por gnzsoloyo; 06/06/2011 a las 11:24 |
| |||
Respuesta: procedimiento alamcenado solo con parametro OUT Gracias gnzsoloyo, tenias razon lo que estaba mal era el trato que le daba en el java porq el SP estubo bien y ahora con tu ultimo ejemplo que me pones tengo las cosas ya un poco mas claras.. gracias nuevamente.... |
| ||||
Respuesta: procedimiento alamcenado solo con parametro OUT
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
Etiquetas: |