동적 쿼리 아니다.
동적 SQL은 sql을 준비해뒀다가 원하는 타이밍에 실행 하는 거다.
prepare myQuery from 'select * from member where mem_id = "BLK"';
execute myQuery;
deallocate prepare myQuery;
저렇게 prepare 해서 쿼리를 저장해 뒀다가,
excute 하면서 실행하면 된다.
그리고 deallocate prepare 해 주면서 해제해줘야 한다.
약간 동적 메모리 해제해주는 그거 같다.
prepare 준비할쿼리명 from '쿼리';
execute 준비할쿼리명;
deallocate prepare 준비할쿼리명;
인자주기.
set @currDate = current_timestamp();
set @aaa = 'asdf';
prepare myQuery from 'insert into gate_table values(null, ?, ?)';
execute myQuery using @currDate, @aaa;
deallocate prepare myQuery;
select * from gate_table;
그러니까 이것도 이렇게 보면 함수 같은 거다.
저렇게 미리 정의를 해 놨다가
실행할 때
execute 쿼리명 using @인자1, @인자2
하면서 실행하면 된다.
근데 @변수만 되는 모양이다.
메모리에 상주하지 않게 해제해주고.