Procedimiento almacenado

Hola quisiera saber si me puedes ayudar a crear un procedimiento almanceado .
Tengo mi tabla USUARIO con los campos código y contraseña y quisiera hacer un procedimiento almanceado que cuando ingrese el código y la contraseña debe mostrarse un mensaje diciendo "Bienvenido" y si el código o la contraseña no existe debe mostrarme un mensaje diciendo "Verifique la contraseña o el código" espero que me puedes ayudar .. Gracias

2 Respuestas

Respuesta
1
Tu Sp como ejemplo simple seria
Create procedure usp_login(
@usuario varchar(10), /*Usuario ingresado*/
@contrasea varchar(10), /*contrasea*/
@Respuesta varchar(50) out /*respuesta a ser devuelta*/
)
as
begin
  if exists(select 1 from USUARIO where NOMBREUSUARIO = @usuario and claveusuario =   @contrasea)
  begin
      set @Respuesta = 'Bienvenido'
  end
  else
  begin
      set @Respuesta = 'Verifique el codigo o Contrasea'
  end
end
Respuesta
1
¿El procedimiento almacenado lo necesitas en SQL Server? ¿Lo vas a usar desde un programa hecho en algún lenguaje en particular?
Te lo digo porque depende en que lo vayas a usar puede ser mejor hacer la función directamente en ese lenguaje que un procedimiento almacenado.
Si lo necesito en sql server y lo quiero iamar desde visual net (lenguaje visual basic)
ia ize el procedimiento me kedo algo azi
create procedure sp_login
@cont char(18),
@usu varchar(6)
as
begin
if (select COUNT(*) from usuarios where contraseña=@cont and codigo_emple=@usu)=1
       begin
         print 'Bienvenido al Sistema'
       end
   else
   print 'Verifique el Codigo o la Contraseña'
end
go
nuc si le puedes agregar algo más o si stabien
y como te digo lo quiero iamar desde visual net
2 cajas de texto y un botón cuando de click en el botón entrar y si la contraseña esta mal escrita o no existe me vote un messagebox diendo que la contraseña o el usuario es incorrecto ...
io ise esto pero nuc q mas
Imports System.Data.Sql
Imports System.Data.SqlClient
Public Class FrmLogin
    Private cn As New SqlConnection("Data Source=.;Initial Catalog=spa_kaulitz;Integrated Security=True")
    Private ds As DataSet
    Private da As SqlDataAdapter
    Private Sub btniniciar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btniniciar.Click
        da = New SqlDataAdapter("sp_login", cn)
        da.SelectCommand.CommandType = CommandType.StoredProcedure
        da.SelectCommand.Connection.Open()
        da.SelectCommand.Parameters.Add("@cont", SqlDbType.Char, 18).Value = txtusuario.Text
        da.SelectCommand.Parameters.Add("@usu", SqlDbType.VarChar, 6).Value = txtpassword.Text
        da.SelectCommand.ExecuteNonQuery()
        da.SelectCommand.Connection.Close()
    End Sub
End Class
El procedimiento que has hecho en sql debería de recibir dos variables, y devolverte un valor en función del resultado, es decir, debería de ser algo así:
Create Procedure Sp_Login (User as varchar(6), Pwd as varchar(18)) as Varchar(10)
Luego, haces tu consulta y si no se cumple, devuelves en el procedimiento
La cadena que sea en cada caso.
Ahora mismo no dispongo en casa de Sql Server para darte un procedimiento entero, si no tienes mucha prisa lo miro en el trabajo el martes y te lo mando.
Ok esta bien de antemano te agradezco por la ayuda ... gracias
Te pongo un ejemplo a ver si te vale.
Primero, creas una tabla Usuarios
Create table Usuarios (username varchar(40), password varchar(40))
Y la rellenas con los usuarios y contraseñas,
Luego te creas un procedimiento almacenado
/****** Object:  StoredProcedure [dbo].[Sp_Users_Login]    Script Date: 11/04/2010 09:45:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[Sp_Users_Login] (@username as nvarchar(100),@password as nvarchar(100))
AS
select Count(*) from Usuarios where Username=@username and password = @password
RETURN
Cambia el ALTER PROCEDURE por un CREATE PROCEDURE
Cuando llames a este procedimiento:
EXEC sp_Users_Login 'usuario','password'
Te devolverá un 0 si no existe y un 1 si existe.
¿Es lo que necesitas?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas