home Foro de soporte Servicio Hosting MySQL
 
Necesito ayuda con el error #1064
Haz clic para ver el perfil del usuario
Usuario Novato
Usuario Novato
·
#1 · ·

Hola,

estoy aprendiendo a manerjar MySQL con la famosa base de datos de ejemplo Chinook, y al escribir una función me sale el dichoso error #1064.

El enunciado de la práctica es "Realizar la función TotalDelCliente que devuelva el total facturado a un cliente.", y el código que he escrito es

  1. CREATE FUNCTION TotalDelCliente (nCustomerID INT) RETURNS DECIMAL(10,2)
  2. BEGIN
  3. DECLARE nCuanto DECIMAL (10,2)
  4.   SELECT
  5.       SUM (Total)
  6.       INTO nCuanto FROM invoice
  7.       WHERE CustomerID = CustomerID
  8.   RETURN nCuanto
  9. End;

Y el error

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT
        SUM (Total)
        INTO nCuanto FROM invoice
        WHERE CustomerID = C' at line 5

Dado que nunca he manejado este lenguaje, y que el libro que usamos tiene los ejemplos en SQL, no consigo encontrar el error del código.

Muchas gracias de antemano

Haz clic para ver el perfil del usuario
@man / @woman
@man / @woman
· ·
#2 ·

Desconozco el Chinook, el lenguaje que utilizas, etc (o sea: casi todo).

De lo que escribiste (el código con líneas numeradas), las líneas de la 4 a la 7 es SQL; y esa sentencia no sigue la lógica para calcular el total facturado a un cliente.

Sugerencias:

- hecha una mirada a las tablas de la base de datos que son necesarias para resolver el cálculo.

- defines que datos son necesarios prover para la consulta.

- defines que tipo de datos quieres recuperar (la respuesta).

- repasa la sintaxis de SQL (en la página web del Sql hay una ayuda total, y con ejemplos).

Una vez lograda la sentencia SQL que necesitas (es un string); deberás gestionar la consulta con el motor de la base de datos, y para ello es necesario un lenguaje que abra la base de datos y establezca una conexión, realice la consulta, y capture el resultado; posteriormente lo manejas normalmente con el lenguaje (en variables).

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Foro de soporte · Servicio Hosting · MySQL
Opciones:
Subscríbete a este tema
Date de baja de este tema
Ir al subforo:  
TU NO PUEDES Escribir nuevos temas en este foro
TU NO PUEDES Responder a los temas en este foro
TU NO PUEDES Editar tus propios mensajes en este foro
TU NO PUEDES Borrar tus propios mensajes en este foro
Ahora son las 01:53 UTC+02:00 DST
Temas similares
 I TemaAutorMensajesVisitasÚltima respuesta
No Hay mensajes nuevos03/Dic/2014, 06:13
12k03/Dic/2014, 07:07
 Ir al último mensaje del tema
No Hay mensajes nuevos28/Mar/2014, 03:05
32k29/Abr/2014, 06:41
User 9293351 Ir al último mensaje del tema
No Hay mensajes nuevos01/Ago/2009, 20:50
463k01/Ago/2009, 22:02
 Ir al último mensaje del tema
No Hay mensajes nuevos03/Oct/2005, 21:27
068403/Oct/2005, 21:27
 Ir al último mensaje del tema
No Hay mensajes nuevos22/Jul/2016, 03:17
197207/Ago/2016, 04:33
 Ir al último mensaje del tema