Ver Mensaje Individual
  #13 (permalink)  
Antiguo 15/03/2008, 23:03
Avatar de Gabo77
Gabo77
 
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 18 años
Puntos: 6
Re: Se puede hacer esto en mysql, postgres??

como bien dicen por ahi, la solución es con una PK. Ahora si eres curioso y quieres hacer algo, puedes poner en un procedimiento almacenado algo como esto (conste que es solo un ejemplo)

Código:
Create Procedure SpAltaUsuario
(
    @Nick As VarChar(10),
    @Nombre As VarChar(50),
    @Error As VarChar(20) OutPut
)
As
If Exists(Select 1 From TbUsuarios Where Nick = @Nick) Begin
    --El Nick ya existe
    Set @Error = 'El Nick: ' + @Nick + ' ya está ocupado'
End
Else Begin
    --el Nick no existe, lo damos de alta
    Insert Into TbUsuarios(Nick, Nombre)
    Values(@Nick, @Nombre)

    Set @Error = ''
End
OJO: para que este código sea óptimo, la tabla usuarios debe tener un indice en el campo Nick, y además este debe ser la llave de tu tabla.

en tu aplicación solo deberás validar el retorno de la variable @Error, si es <> '' entonces es un error y lo presentas en tu APP.... el manejo de error es un ejemplo, pero hay mejores formas de tratarlo... solo te muestro la mas sencilla.

Saludos!
__________________
Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....