Parameter Placeholder - MySQL

CODEDRAGON Development/Python

반응형


 

 

Parameter Placeholder

·         동적 SQL 구성하기 위해서 파라미터값이 들어가는 위치에 Parameter Placeholder %s (MySql 경우) 넣고, execute() 메서드의 두번째 파라미터에 실제값들이 저장된 Tuple 지정합니다.

·         Placeholder 컬럼값을 대치 때만 사용됩니다. 테이블이나 기타 문장에 Placeholder 사용할 없습니다.

 

 

sql = "select * from customer where category=%s and region=%s"

 

curs.execute(sql, (20'dallas'))

 

 

 

sql = "select * from customer where category=%s and region=%s"

구분

설명

%s

·         Placeholder 기호

·         일반 문자열 포맷팅에 사용하는 %s, %d 등과 다릅니다.

·         문자열이건 숫자이건 모두 %s 사용하며, 문자열이라도 %s 인용부호로 둘러싸지 않는다.

 

 

 

curs.execute(sql, (20, 'dallas'))

parameter

description

첫번째 파라미터

·         SQL

두번째 파라미터

·         (20, 'dallas')  파라미터값을 튜플에 넣어 줍니다.

·         튜플 안의 데이타는 SQL문에서 순서대로 적용됩니다.

·         특히 문자열의 경우 단일인용부호(Single Quote) 같은 특수 문자들이 자동으로 Escape 되어 처리됩니다.

 

 


반응형

'Development > Python' 카테고리의 다른 글

파이썬 3.x 버전의 내장 모듈  (0) 2020.02.19
직렬화와 역직렬화  (0) 2020.02.19
iterator vs generator  (0) 2020.02.19
처리되지 않은 예외(Unhandled Exception)  (0) 2020.02.18
예외(Exception)  (0) 2020.02.18