php에서 PDO를 통해
prepare / execute / fetch를 통해 수행하는 것과
query / fetch를 하는게 있길래 찾아보니..
얘는 엄밀하게 mysql의 지원기능이라고 해야 하려나?
mysql> SET @s = 'SELECT SQRT(POW(?,2) + POW(?,2)) AS hypotenuse'; mysql> PREPARE stmt2 FROM @s; mysql> SET @a = 6; mysql> SET @b = 8; mysql> EXECUTE stmt2 USING @a, @b; +------------+ | hypotenuse | +------------+ | 10 | +------------+ mysql> DEALLOCATE PREPARE stmt2; |
[링크 : https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-prepared-statements.html]
prepare는 mysql 내부에서 치환을 통해 어떠한 수행을 할 수 있는 일종의 매크로 같은 개념으로
확장해서 사용할 수 있도록 하는 건데..
성능상의 차이가 없다면.. php에서 query문을 직접 변수 치환해서 하는게 편할수도 있을테니
어느게 좋고 어느게 나쁘다 라고 하긴 애매 할 듯.
관리적인 측면에서는 쿼리문을 쫘악 정리하고 변수 치환만 해서 쓰도록
php에서 변수 대입을 하던 mysql 에서 prepare로 하던 똑같으니까?
[링크 : http://www.codeigniter-kr.org/bbs/view/qna?idx=9891]
[링크 : http://stackoverflow.com/questions/4700623/pdos-query-vs-execute]
'프로그램 사용 > mysql & mariaDB' 카테고리의 다른 글
mysql 테이블 내 일정 문자열 치환하기 (0) | 2017.01.26 |
---|---|
mysql 암호화 방법들...? (0) | 2017.01.16 |
mysql mariadb 호환성 (0) | 2017.01.12 |
mysql 트랜잭션 (0) | 2017.01.12 |
mysql blob - binary large object (0) | 2017.01.12 |