SQL Server - error al validar ingreso usuario

 
Vista:
sin imagen de perfil

error al validar ingreso usuario

Publicado por Elias (3 intervenciones) el 05/04/2015 04:28:08
Hola :
Estoy creando un procedimiento almacenado para insertar un nuevo usuario y eso lo hace sin problemas.
Pero además tengo que validar si el usuario ya existe y cuando ingreso los datos de un usuario que ya existe en la tabla, me despliega el siguiente mensaje de error:

Mens 8114, Nivel 16, Estado 5, Procedimiento IngresoUsuario, Línea 14
Error converting data type varchar to float.


No entiendo bien cual es el error . Ustedes me pueden ayudar?.... muchas gracias!.

Este es mi procedimiento:


create proc IngresoUsuario @Usu float,
@Tiu float,
@Usunom nvarchar(255),
@Usualias nvarchar(255),
@Usupass nvarchar(255),
@Usumail nvarchar(255),
@Usuact float,
@Usumet float

as
---validando si ya existe el usuario en la tabla
if exists (select * from Usuario where UsuId=@Usu)
begin
print ('El Usuario ya existe' + @Usu)
return
end

---si usuario no existe lo insertamos
begin
insert into Usuario values (@Usu,@Tiu,@Usunom,@Usualias,@Usupass,@Usumail,@Usuact,@Usumet)
end
go

---validando que despliegue mensaje
exec IngresoUsuario 5,2,'María Gutierrez','mguti','mguti3333','[email protected]',0,8
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

error al validar ingreso usuario

Publicado por Isaias (4558 intervenciones) el 05/04/2015 22:11:06
Es muy simple y el mensaje de error es muy explicativo, estas intentando hacer un CONVERT implícito de un float vs contra otro tipo de dato, sugiero que veas que tipo de dato son estas comparaciones

UsuId=@Usu
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

error al validar ingreso usuario

Publicado por Elias (3 intervenciones) el 06/04/2015 02:37:24
Muchas gracias por la ayuda, estoy recién empezando en esto. Me resulto la validación al borrar +@Usu donde el código dice


print ('El Usuario ya existe' + @Usu)

Luego al ingresar un usuario ya existente, valida y despliega el mensaje.


Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

error al validar ingreso usuario

Publicado por Isaias (4558 intervenciones) el 06/04/2015 16:58:06
Para regresar un valor o mensaje a tu capa cliente, debes hacerlo mediante un simple select y en tu caso, hacer el convert necesario


SELECT 'El usuario ' + cast(@Usu as varchar(30)) + ', Ya existe'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

error al validar ingreso usuario

Publicado por Elias (3 intervenciones) el 06/04/2015 22:15:27
Isaias muchas gracias me funciono mejor aún con esa linea de codigo,
reemplacé:
print ('El Usuario ya existe' + @Usu)
por
SELECT 'El usuario ' + cast(@Usu as varchar(30)) + ', Ya existe'

Esto logró que aparte de decirme que el usuario ya existe, además menciona el id de usuario que ya existe, dejando el ejercicio mas completo.


Muchas gracias!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar