프로시저란?
프로시저 작성법
마치며
SQL을 사용하다 보면 프로시저를 사용할 경우가 생깁니다.
자주 쓰이는 복잡한 쿼리문이라든지 속도가 중요한 쿼리문은 프로시저로 작성하는 게 더 효율적입니다.
프로시저는 무엇이고 왜 사용하는지 그리고 작성법에 대해 알아보겠습니다.
CREATE PROCEDURE [스키마명].[프로시저명]
@변수 타입
-- ex @name varchar(5)
AS
BEGIN
SET NOCOUNT ON;
-- NOCOUNT는 성능을 잡아먹기 때문에 꺼주시는 게 좋습니다.
SELECT *
FROM [DB명].[스키마명].[테이블명]
END
이것이 프로시저 작성할때 기본이 되는 뼈대입니다.
CREATE PROCEDURE를 통해 어느 스키마에 어느 프로시저 명으로 생성을 할 것인지 작성합니다.
변수들을 선언해서 반응형으로 만들 수도 있습니다.
그 후 원하시는 식을 써서 사용하시면 됩니다.
캐시 기능이 있기 때문에 다음 번 실행할 때 더 빠르게 실행될 수 있기에 복잡한 쿼리나 자주 사용해야하는 쿼리들을 프로시저로 작성하면 좋습니다.
ALTER PROCEDURE [스키마명].[프로시저명]
@변수 타입
-- ex @name varchar(5)
AS
BEGIN
SET NOCOUNT ON;
-- NOCOUNT는 성능을 잡아먹기 때문에 꺼주시는 게 좋습니다.
SELECT *
FROM [DB명].[스키마명].[테이블명]
END
DROP PROCEDURE [스키마명].[프로시저명]
exec [스키마명].[프로시저명]
exec는 리눅스의 실행 명령어지만 sql에서 프로시저를 호출할때 사용합니다.
변수가 없을 시에는 바로 이렇게 명령어만 실행하면 실행됩니다.
exec [스키마명].[프로시저명] 'name',3,5
간단하게 프로시저를 어떤 식으로 생성하고 수정하고 호출하는지 알아봤습니다.
틀린 점이 있다면 말씀해주시면 감사하겠습니다.
유익해요