Python의 DB API 사양을 사용하면 매개 변수의 인수를 execute() 메서드에 전달할 수 있습니다. 내 진술의 일부는 WHERE 절이 었으며 튜플을 사용하여 IN을 채 웠습니다. 예를 들면 :WHERE IN ... INT 목록에 대한 매개 변수 전달 .execute
params = ((3, 2, 1),)
stmt = "SELECT * FROM table WHERE id IN %s"
db.execute(stmt, params)
하지만 매개 변수 튜플이 실패 실행 한 항목의 튜플 인 상황으로 실행할 때.
ProgrammingError: ERROR: syntax error at or near ")"
LINE 13: WHERE id IN (3,)
튜플을 올바르게 사용하려면 어떻게해야합니까?
내가 틀렸다고 정정하되, 예제가 IN 하위 조항에만 첫 번째 항목 만 전달하면 안됩니까? > SELECT * FROM 테이블 어디에서 id (3) –
@ 존 : 네가 맞아. 고마워. 추가 정보로 답변을 업데이트 중입니다. – bernie
고마워요, Adam. –