검색결과 리스트
이상 에 해당되는 글 1건
- 2014.06.26 mysql sp에서의 조회하는 컬럼명에 @를 붙이는 실수
2014.06.26 21:08
예를들어 sp를 사용할 때, 내가 조회하는 테이블에 seqIndex라는 컬럼이 있고,
쿼리문은 아래와 같다고 가정한다.
insert into tbTable_Backup (seqIndex) select @seqIndex from tbTable where index=@inp_index;
tbTable과 tbTable_Backup은 같은 구조로 되어 있으며,
tbTable은 seqIndex bigint 컬럼 하나만 가지고 있다고 가정한다.
위 쿼리에서 원래는 서브쿼리인 select문은, 아래의 코드가 원래 의도했던 바다.
insert into tbTable_Backup (seqIndex) select seqIndex from tbTable where index=@inp_index;
이 경우,
Query Browser 든, WorkBench든 문법 오류를 발생하지 않는다.
(컬럼 이름과 변수명이 틀린다고 해도 오류를 발생하지는 않음.)
sp를 사용할 때는 더 황당해 지는데, SQLExecute를 실행해도 오류는 발생하지 않는다.
output 값이 없을 경우, 이런 에러에 대해서는 대처할 방안이 없다.
또한 output 값이 있어도 정상적인 output값을 리턴하지 않는다.
지정된 output값에는 @seqIndex값이 들어가 있을 것이다.
output 변수의 이름이 @seqIndex가 아니어도...
단순 오타에서 비롯된 문제긴 했지만,
mysql에서 어떻게 이런 코드가 output값에 영향을 미쳤는지 찾아봐야 할 듯.
'개발/경험 > DATABASE' 카테고리의 다른 글
MariaDB MaxScale (발)번역 (0) | 2015.01.23 |
---|---|
mysql query browser 세션 문제 (0) | 2014.07.02 |
mysql sp에서의 조회하는 컬럼명에 @를 붙이는 실수 (0) | 2014.06.26 |
mysql Query Browser에서 sp가 모두 사라짐 현상 확인 (0) | 2014.05.22 |
mysql 로그 관련 정리 (0) | 2014.02.05 |
mysql vs MariaDB (0) | 2014.01.08 |