일단 쿼리는 아래와 같습니다.
----원본
쿼리--------------------------------------------------------------
SELECT cmusr_name, cmusr_level, cmusr_place,
cmusr_position,
gwplin_name, gwmepo_subject, gwcoin_logo
FROM gw_com_info, cms_user cur
LEFT OUTER JOIN gw_member_position ON cmusr_position =
gwmepo_seq
LEFT OUTER JOIN gw_place_info ON cmusr_place =
gwplin_seq
WHERE cmusr_userid = 'testid' AND cmusr_pwd = 'test1234'
--------------------------------------------------------------------------
4.x 버젼에서는 분명 위의 쿼리가 실행되었으나 5.x 버젼에서는
아래와 같은 에러를 발생시킵니다.
Unknown 칼럼 'cmusr_position' in 'on clause'
이유인 즉 얼핏 보니 cmusr_position 이라는 필드를 찾지 못하고
있는 듯 보였습니다.
그래서 아래처럼 수정하였습니다.
----원본
쿼리--------------------------------------------------------------
SELECT cmusr_name, cmusr_level, cmusr_place,
cmusr_position,
gwplin_name, gwmepo_subject, gwcoin_logo
FROM cms_user cur, gw_com_info --위치 변경
LEFT OUTER JOIN gw_member_position ON cmusr_position =
gwmepo_seq
LEFT OUTER JOIN gw_place_info ON cmusr_place =
gwplin_seq
WHERE cmusr_userid = 'testid' AND cmusr_pwd = 'test1234'
--------------------------------------------------------------------------
테이블의 위치를 변경시키니까 쿼리가 정상적으로
실행되더군요...
(참고로 cmusr_position 은 cms_user 라는 테이블에 포함되어 있는
필드입니다.)
하지만 저 부분이 문제입니다. 프로그램 전체가 4.x 기반으로 되어
있기 때문에 저걸 하나 하나 찾아서 수정할 수 있는 여건이 안됩니다.
테스트도 문제구요...
어떻게 한번에 처리할 수 있는 방법 없을까요?
어떤 설정이나 꽁수(^^;) 라도 있으시면 알려주세요.
미리 감사 드립니다.~ 제발.. ㅠ ㅠ
|