Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Problemas al crear procedimientos almacenados

Estas en el tema de Problemas al crear procedimientos almacenados en el foro de Mysql en Foros del Web. Ayuda!! intento hacer un procedimiento almacenado y me sale un error que dice: #1655 - Cannot create stored routine `get_id_creador`. Check warnings Este es mi ...
  #1 (permalink)  
Antiguo 14/01/2012, 21:15
 
Fecha de Ingreso: octubre-2011
Mensajes: 4
Antigüedad: 13 años, 1 mes
Puntos: 0
Pregunta Problemas al crear procedimientos almacenados

Ayuda!! intento hacer un procedimiento almacenado y me sale un error que dice:

#1655 - Cannot create stored routine `get_id_creador`. Check warnings

Este es mi procedimiento

Código:
CREATE PROCEDURE get_id_creador
  ( OUT `idc` int(11),  IN `ida` int(11) )
  BEGIN
     SELECT `id_creador`  FROM `anuncio` WHERE `id_anuncio` = `ida` INTO `idc`;
  END;//
y uso delimitador //

Tambien intente hacer esto:

Código:
CREATE FUNCTION get_idc ( ida int(11) )
    RETURNS int(11)
    RETURN SELECT id_creador FROM anuncio WHERE id_anuncio = ida;
  //
igual con delimitador // y me sale este error:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT id_creador FROM anuncio WHERE id_anuncio = ida' at line 3

Alguna idea o sugerencia?? o alguien sabe donde esta mi error? lo unico que quiero es extraer en la consulta es id_creador y con parametro de entrada ida que es el id del anuncio, la tabla es algo asi:

Código:
anuncio( id_anuncio, id_creador, .... )
  #2 (permalink)  
Antiguo 14/01/2012, 21:42
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problemas al crear procedimientos almacenados

Por empezar, dinos qué estás usando para intentar cargar el SP: Navicat, MySQL Query Browser, MySQL Workbench, phpMyadmin... ¿que?
La pregunta apunta a saber por donde empezar, porque algunos front-end como los mencionados tienen formas específicas para manejar el tema de la creación de SP.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 14/01/2012, 23:13
 
Fecha de Ingreso: octubre-2011
Mensajes: 4
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Problemas al crear procedimientos almacenados

a si perdón me olvide estoy usando phpMyAdmin y MySQL
  #4 (permalink)  
Antiguo 19/01/2012, 07:33
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problemas al crear procedimientos almacenados

phpMyadmin requiere que se indique cuál es el caracter o expresión usado como delimitador de sentencias. Eso se hace poniendolo en un textbox, abajo de la pantalla de ejecución de SQL.
En este caso, no se debe usar el comando DELIMITER, ya que lo incorpora el PHP por su cuenta.
Detalle importante: Jamás uses el caracter de escape o las barras, o ningún símbolo de uso en SQL para indicar el delimitador. Generan errores inesperados en el código.
Lo más práctico es usar "$$", como se muestra en el manual de reerencia de MySQL.

Código MySQL:
Ver original
  1. CREATE FUNCTION get_idc ( ida int(11) )
  2.     RETURNS int(11)
  3.     RETURN SELECT id_creador FROM anuncio WHERE id_anuncio = ida$$

Código MySQL:
Ver original
  1. CREATE PROCEDURE get_id_creador
  2.   ( OUT `idc` int(11),  IN `ida` int(11) )
  3.      SELECT `id_creador`  FROM `anuncio` WHERE `id_anuncio` = `ida` INTO `idc`;
  4.   END$$
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 16/05/2012, 08:06
Avatar de Beuses  
Fecha de Ingreso: marzo-2009
Ubicación: Maracaibo
Mensajes: 132
Antigüedad: 15 años, 8 meses
Puntos: 5
Respuesta: Problemas al crear procedimientos almacenados

Hola.. Disculpa gnzsoloyo Como se hace para luego llamar ese SP (usando phpmyadmin)??

Etiquetas: procedimientos, almacenar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:25.