elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Error leve en procedure SQL server 2012
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error leve en procedure SQL server 2012  (Leído 3,032 veces)
lorblack

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Error leve en procedure SQL server 2012
« en: 7 Noviembre 2016, 19:28 pm »

Este es mi código

Citar
   CREATE PROC insertar_producto
   @cod int OUTPUT,
   @nom varchar(100),
   @pre decimal(18,2),
   @img varchar(100)
   AS
   BEGIN
   SET NOCOUNT ON;
   SELECT  ISNULL(MAX(codigoProducto),+ 1) INTO @cod FROM producto
   INSERT INTO producto (codigoProducto, nombre, precio, imagen) VALUES (@cod, @nom, @pre, @img)
   END

el problema es que me aparece con un error en la línea del SELECT INSNULL en la variable @cod, no sé qué estoy haciendo mal, el error.
Citar
Sintaxis incorrecta cerca de '@cod'.


En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.524


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Error leve en procedure SQL server 2012
« Respuesta #1 en: 7 Noviembre 2016, 19:34 pm »

Hola!

No sé mucho del tema, pero me parece que la coma delante del +1 está demás?

Código:
SELECT  ISNULL(MAX(codigoProducto),+ 1) INTO @cod FROM producto

Saludos!


En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

lorblack

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Error leve en procedure SQL server 2012
« Respuesta #2 en: 7 Noviembre 2016, 19:41 pm »

No, la coma debe ir por la sintaxis del IFNULL, puesto que los dos parámetros de estos serian lo que hay antes y después de la coma, el + es sólo para aumentar en 1 el número que hay anteriormente.
En línea

fran800m

Desconectado Desconectado

Mensajes: 204



Ver Perfil
Re: Error leve en procedure SQL server 2012
« Respuesta #3 en: 7 Noviembre 2016, 19:42 pm »

Creo recordar que isnull es una funcion que devuelve el segundo parámetro si el primero resulta null

¿Puede ser ésto lo que quieres hacer?

SELECT  ISNULL(MAX(codigoProducto) + 1, 1) INTO @cod FROM producto
En línea

lorblack

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Error leve en procedure SQL server 2012
« Respuesta #4 en: 7 Noviembre 2016, 19:45 pm »

Me sigue dando el mismo error.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines