Comunidad de diseño web y desarrollo en internet online

AYUDA con procedimiento almacenado

Citar            
MensajeEscrito el 02 May 2008 04:00 am
Sres. una ves mas requiero de su ayuda, tengo un STORE PROC qe en local (en mi pc) me funciona de maravillas sobre mi server MySQL 5.0.45-community el mismo qe tengo en mi server en internet; ahora el problem es PORQ DEMONIOS jajaj no puedo crear este PROC en internet si es exactamente el mismo, he revisado en un montos de sitios y no encuantro error alguno en mi codigo, y segun el server tengo un error en sintaxis:

"#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 '' at line 4 ".

Porfavor si me pueden dar una mano, tengo qe tener esto lo antes posible; les dejo el PROC:

CREATE PROCEDURE sp_regPartic(IN nombre VARCHAR(25), IN ape VARCHAR(25), IN email VARCHAR(40), IN telef VARCHAR(15), IN edad INT, IN talla VARCHAR(4), IN medidas VARCHAR(11), IN coment VARCHAR(180), IN img1 VARCHAR(60), IN img2 VARCHAR(60), IN img3 VARCHAR(60))
BEGIN
DECLARE ultimo_id INT;
START TRANSACTION WITH CONSISTENT SNAPSHOT;
INSERT INTO concursante(nombre, apellidos, email, telef, edad, estatura, medidas, coment)
VALUES (nombre, ape, email, telef, edad, talla, medidas, coment);

SELECT LAST_INSERT_ID() INTO ultimo_id;
INSERT INTO images(ruta, idPartic) VALUES(img1, ultimo_id);
INSERT INTO images(ruta, idPartic) VALUES(img2, ultimo_id);
INSERT INTO images(ruta, idPartic) VALUES(img3, ultimo_id);
INSERT INTO concurso(fecha_reg, idPartic) VALUES(NOW(), ultimo_id);
COMMIT;
END

MIL GRACIAS por la ayuda.

Por Marlon

21 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 02 May 2008 04:27 am
creo que te falta un punto Y coma aquí

VARCHAR(60));

Por jpcw

Claber

1715 de clabLevel

1 tutorial

Genero:Masculino  

AlgoritmicBrainDesigner

firefox
Citar            
MensajeEscrito el 02 May 2008 03:41 pm
Puede ser que tu usuario no tenga permisos para crear store procedures. En algunos hostings compartidos, generalmente no tienes privilegios para crear store procedures.

Otra cosa, no uses phpmyadmin, usa Navicat o algun otro IDE de escritorio. Phpmyadmin no esta preparado para los store procedures.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 02 May 2008 07:30 pm
Me inclino porque esta usando phpmyadmin como ide para crear el store procedure, y siempre da error de sintaxis.

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 02 May 2008 07:33 pm

Dano escribió:

Puede ser que tu usuario no tenga permisos para crear store procedures....

Otra cosa, no uses phpmyadmin, usa Navicat o algun otro IDE de escritorio. Phpmyadmin no esta preparado para los store procedures.


Creo qe es eso, mi user no puede crearlos, y algo: en local uso MySQL-Front (IDE de escritorio), como hago para desd aqui crear el SProc, en leido algunas tutos pero no lo he conseguido aun..?? qe se hace amigo.

Por Marlon

21 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 02 May 2008 07:47 pm
En el cpanel de tu servidor, hay una opción para permitir el "acceso remoto". Da de alta tu ip, si es inglés dirá algo como "Allowed Host". Y ya con eso te podrás conectar al mysql de tu hosting.

Tengo años que no uso phpmyadmin, precisamente porque no soporta Store Procedures, por eso te decia lo de usar otro IDE.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 03 May 2008 01:07 am
A todos MUCHAS GRACIAS (en especial Dano) tenian razon solo tenia q usar mi cliente (en mi caso MySQL-Front); pero en server tuve qe entar (lo explico para los q padezcan lo mismo) a CPanel -> MySQL® Databases -> Access Hosts (add host - q esta casi al final de la pagina); despues de eso voy al Front y ya pues le añado los datos... Mil Gracias.

Por Marlon

21 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 26 Abr 2016 08:23 pm
Al intentar crear un procedimiento puede aparecer:

#1064 - You have an error in your SQL sintax;
Las sentencias sql para crear un procedimiento en la base de datos son:
CREATE PROCEDURE `xx`( )
BEGIN
SELECT * FROM usuario;
END

Y luego de esto debería aparecer la respuesta de que la consulta fue ejecutada...pero nos pasó que muchas veces (pero no todas) nos aparecía el mensaje de error de #1064 – You have an error in your SQL sintax; ……
Estamos usando phpmyadmin desde el servidor.

Después de mucho investigar, pero sobre todo de hacer “ensayo y error”, logramos descubrir cómo evitar que aparezca ese error.
Lo que nos funcionó fue usar estos marcadores ANTES y DESPUES del código de creación de procedimiento:
DELIMITER //
<sentencias de procedimiento>
//
De esta manera, por ejemplo para crear un procedimiento que consulta una tabla, el código se debe escribir:
DELIMITER //
CREATE PROCEDURE xx ()
BEGIN
SELECT * FROM miTabla;
END
//

Recuerde que en la primera línea, entre el DELIMITER y el símbolo //, debe haber un espacio en blanco (barra espaciadora).

Éxitos y esperamos que sea de ayuda.

Por olvegam

0 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.