MySQL - Ayuda con problema al crear un sp

   
Vista:

Ayuda con problema al crear un sp

Publicado por EMGA (9 intervenciones) el 12/11/2008 20:48:29
Hola gente del foro solo les escribia por que necesito ayuda con un problema que tengo .

lo que sucede es lo siguiente e creado una tabala con 2 campos uno que se llama ID es un int(3) y otro que se llama Nom un varchar(20)

la cosa es que al crear SP de insercion para probar la creacion de los SP's lo creo todo normal y al momneto de ejecutarlo me parace el si guiente error...

SQL Error: Unknown column 'Paula' in 'field list'

el codigo que uso para el SP es el siguiente

DELIMITER |

CREATE PROCEDURE `AddText`
(
IN `@id` int(3),
IN `@nom` varchar(20)
)
BEGIN
INSERT INTO mytabla (id,nom) VALUES (`@id`,`@nom`);
END|

DELIMITER ;

pos: esto solo me sucede con valores alfabeticos ya que los numericos me los acepta, si alguien sabe cual es el problema o como lo puedo solucionar.
De Antemano Mil Gracias...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con problema al crear un sp

Publicado por Gonzalo GC (339 intervenciones) el 13/11/2008 11:26:42
El problema es que:
1. Estás poniendo los mismos nombres para los campos que para las variables.

2. Como estás ingresando esos valores dentro de las variables, el INSERT asume que debe usar el contenido de esas variables para definir los nombres de los campos.

3. Además, estás poniendo el acento grave para encerrar los valores (VALUES) cuando eso es absolutamente innecesario. Los valores contenidos en variables se ponen solamente en forma de los nombres de variables.. Al usar ese acento (¿para qué?), MySQL lo toma como nombres de campo... y no los encuentra porque no hay ninguno con esa denominación.

Las variables se declaran en el prototipo de un SP sin el caracter arroba (@).
Ese caracter se usa en variables de usuario dentro de los SP pero sin declaración, y se lo utiliza muchas veces para construir sentencias preparadas. No te lo recomiendo para esos casos.

Date una vuelta por el manual de referencia y mira bien el uso de variables de usuario (http://dev.mysql.com/doc/refman/5.0/es/variables.html) y de procedimientos almacenados (http://dev.mysql.com/doc/refman/5.0/es/variables-in-stored-procedures.html).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con problema al crear un sp

Publicado por EMGA (9 intervenciones) el 13/11/2008 14:52:41
Gonzalo Gracias por tus consejos me fueron de mucha ayuda.

ahora mi aplicacion corre correctamente..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar