저장 프로시저 만들기
사용법)
CREATE PROC[EDURE] 저장 프로시저 이름
[저장 프로시저의 매개 변수 목록]
AS
저장 프로시저 내에서 실행될 쿼리들
1. 매개변수 없는 프로시져
예)
CREATE PROC up_member
AS
Begin
SELECT *
FROM test_member
End
실행명령 : EXEC 실행할 저장 프로시저 이름 (EXEC up_member)
2. 매개변수 있는 프로시져
예)
CREATE PROC up_member
@id varchar(20)
AS
Begin
SELECT *
FROM test_member
WHERE member_id=@id
End
실행명령 : EXEC 실행할 저장 프로시저 이름 변수 (EXEC up_member 'sunmi')
3. 리턴값을 갖는 프로시져
예)
CREATE PROC up_member
AS
Begin
DECLARE @Count int
SELECT @Count = count(*)
FROM test_member
RETRUN @Count
End
실행명령 :
DECLARE @Count int
EXEC @Count = up_member
SELECT @Count
4. OUTPUT 매개변수 이용하는 프로시져
예)
CREATE PROC up_member
@Count int OUTPUT
AS
Begin
SELECT @Count = count(*)
FROM test_member
End
실행명령 :
DECLARE @Count int
EXEC up_member @Count OUTPUT
SELECT @Count
5. 프로시져 삭제하기
- drop proc 프로시저명
6 프로시져 수정하기
-
ALTER PROC 수정할 SP 이름
[프로시저 매개 변수 목록]
AS
실행할 쿼리 문장들
7. 프로시저내에 분기
-
CREATE PROC sp_UpPrice
@type char(12),
@plus Float
AS
Begin
Declare @Check int
Select @Check = Max(price) from titles
Where type = @type
if @Check < 50
Begin
Update titles SET price = price + @plus
Where type = @type
Select @Check = 1
End
Else
Select @Check = 0
Return @Check
End
[출처] 저장 프로시저 만들기|작성자 태구니
추가 by happynuri
sql에서 매개변수 추가 해서 만들고
CREATE PROC UserLoggingUpdate
@loginID nvarchar(50),
@logoutTime datetime
AS
Begin
update dbo.UserLogging set logoutTime = @logoutTime
where userID =@loginID
and loginTime =(select max(loginTime) from UserLogging where userID = @loginID)
End
실행
EXEC UserLoggingUpdate 'aspnetsqlmembershipprovider:sehoon0.lee', '2009-02-28'
댓글 영역