Stored procedure?
쉽게 설명하자면, stored procedure는 function의 역할을 하는 SQL code의 묶음입니다.
굳이 이걸 사용해서 얻는 장점이라면..
application의 퍼포먼스를 높일 수 있다 - 컴파일이 되어 저장되기 때문에 일반 SQL 명령보다 빠름.
application과 DB server 사이의 트래픽을 줄일 수 있다
정도일 것 같습니다. 물론 이것보다 많은 장점이 있겠지만 당장 피부에 와닿는 거는 이 정도구요, 싫어하시는 분들도 많습니다. 의외로 stored procedure를 사용하는 개발자는 적습니다.
그러면, 이제 작성 방법에 대해서 적어보겠습니다.
1. DELIMITER //
mysql에서 기본으로 사용하는 delimiter(;)를 바꿔줍니다.
끝난 후에는 다시 DELIMITER ; 로 되돌려 놓도록 합니다.
2. BEGIN ~ END
프로시저의 구성은 BEGIN 부터 END 까지입니다. 自 BEGIN 至 END 라고나 할까.. 죄송합니다;;
여기까지 내용으로 뼈대를 만들어 보면 다음과 같습니다:
DELIMITER // CREATE PROCEDURE myFirstProc() BEGIN ... END // DELIMITER ; |
3. variable 설정
변수 선언은 DECLARE, 값 지정은 SET을 사용합니다.
DECLARE
variable_name datatype(
size
)
DEFAULT
default_value;
ex)
DECLARE x, y INT DEFAULT 0
SET x = 10;
혹은 SELECT COUNT(*) INTO x FROM products 이렇게도 사용합니다.
variables scope는 당연히 적용이 되고.. 단, 변수 앞에 '@'를 넣으면 session 변수가 됩니다.
'Dev' 카테고리의 다른 글
laravel + mongodb 개발 (0) | 2015.02.05 |
---|---|
[IONICBOX] IONIC에서 공개한 하이브리드앱 hybrid app 개발 framework (2) | 2014.09.20 |
Webapp, AngularJS 개발 환경 셋업 (node.js, yeoman) (0) | 2014.08.20 |
twitter test (0) | 2012.03.30 |