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

Problema con un procedure en mysql

Estas en el tema de Problema con un procedure en mysql en el foro de Mysql en Foros del Web. Estimados, tengo que hace un stoprocedure en mysql, en donde tengo que insertar unos datos y me da un error. En sql lo puedo hacer ...
  #1 (permalink)  
Antiguo 25/09/2008, 08:58
 
Fecha de Ingreso: septiembre-2008
Mensajes: 8
Antigüedad: 16 años, 2 meses
Puntos: 0
Problema con un procedure en mysql

Estimados, tengo que hace un stoprocedure en mysql, en donde tengo que insertar unos datos y me da un error. En sql lo puedo hacer pero en mysql no me funciona, se supone que desde la version 5 de mysql se pueden hacer consultas en sql...

Ahora esto es lo que pongo...

CREATE PROCEDURE sp_insertarUsauario(
in usuario_nombre varchar(20),
in usuario_apellidopaterno varchar(20),
in usuario_apellidomaterno varchar(20),
in usuario_rut varchar(9),
in usuario_fechanacimiento varchar(20),
in usuario_fono varchar(10),
in usuario_email varchar(30),
in usuario_password varchar(25))
AS
BEGIN
if in usuario_rut='' or in usuario_rut is null
BEGIN
print "error, debe ingresar RUT"
END
else
BEGIN
INSERT INTO persona values(usuario_nombre,usuario_apellidopaterno,usua rio_apellidomaterno,usuario_rut,usuario_fechanacim iento,usuario_fono,usuario_email,usuario_password)
END
END



y me tira 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 'AS
BEGIN
if in usuario_rut='' or in usuario_rut is null
BEGIN
' at line 10
  #2 (permalink)  
Antiguo 25/09/2008, 09:41
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: Problema con un procedure en mysql

1. Un store procedure sólo reconoce un sólo bloque BEGIN/END y tu estás poniendo tres y encima dos están anidados. ¿Qué objeto cumplen los dos que están de mas?
2. PRINT no es una sentencia de MySQL.
3. No estás programando una aplicación. El motor no funciona como un front-end, por lo que no puedes interactuar en un Store Procedure como lo harías, por ejemplo, con el iSQL PLus de Oracle.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 22:16.