Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > MySQL > Ayuda con error 1064.
-Foros de debate

MySQL
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Ayuda con error 1064.
Enviado por hadrien el día 14 de abril de 2008

Hola,

estoy trabajando con MySQL 5.0. Tengo la tabla FILE con diferentes particiones FILE_PK (con k desde 0 hasta N ) y un procedimiento almacenado que inserta filas de valors en la partición correcta:

CREATE PROCEDURE insert_file (
IN idfile BIGINT UNSIGNED,
IN id2 VARCHAR(32),
IN name VARCHAR(128),
IN size BIGINT UNSIGNED,
IN checksum VARCHAR(32),
IN user SMALLINT UNSIGNED,
IN `group` TINYINT UNSIGNED,
IN permits TINYINT UNSIGNED,
IN dir BIGINT UNSIGNED
)
BEGIN
DECLARE n BIGINT DEFAULT 0;
IF idfile < 10000000 THEN
SET n = ( idfile DIV 5000 );
ELSE
SET n = 2000;
END IF;
SET @stmt = CONCAT('INSERT INTO file_p',n,
' VALUES(',idfile,',',id2,',',name,',',
size,',',checksum,',',user,',',`group`,',',permits,',',dir,')');
PREPARE stmt FROM @stmt;
EXECUTE stmt;
END;

Pero cuando llamo al procedimiento para insertar valores:

CALL insert_file(1,'123','/docs.txt',45,'gfretgfe',2,3,1,1);

Obtengo el siguiente error:

ERROR 1064 (42000) at line 24: You have an error in your SQL syntax; check the m
anual that corresponds to your MySQL server version for the right syntax to use
near '/docs.txt,45,gfretgfe45,2,3,1,1)' at line 1.

Sin embargo, no sé ver dónde está el problema realmente... ¿Alguien puede echarme una mano, por favor?

¡Gracias!

 

Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network