• 카테고리

    질문 & 답변
  • 세부 분야

    데이터베이스

  • 해결 여부

    미해결

따옴표의 사용에 관한 질문입니다

22.03.30 22:25 작성 조회수 142

0

강의에서 보여주신 코드 중 

sql = """INSERT INTO product VALUES(
    '""" + str(product_code) + """', '스위트바니 여름신상5900원~롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F'); """

다음 부분에서 조금 막혀 혼자 고민을  해봤습니다.

제가 나름대로 내린 결론은, 

해당 코드는

"""INSERT INTO product VALUES('"""

 

str(a)

 

"""', '스위트바니 여름신상5900원~롱원피스티셔츠/긴팔/반팔', 23000, 6900, 70, 'F');"""

다음과 같이 세 부분으로 나누어진 형태이고, 이를 연결하기 위해 +를 사용하였다는 것 입니다.

그리고, 여기서 굳이 """ 를 이용한 이유는 

코드가 한 줄을 넘겨서 작성될 수도 있으므로

멀티라인 입력을 통해, 일반적인 따옴표를 이용할 때 생길 수도 있는 오류를 피하기 위해서 라고 생각하였는데요,

혹시 제가 생각한 것이 맞는 건가요?

평소에 보던 문자열과는 조금 다르다 보니 헷갈리네요...

답변해 주신다면 정말 많이 도움될 것 같습니다. 감사합니다.

답변 1

답변을 작성해보세요.

1

안녕하세요.

 

네 말씀하신 바가 맞습니다.

SQL 구문을 자동으로 만들어야 하다보니, 중간에 변수 값이 포함된 SQL 을 만들어야 해서, + 를 썼었고, SQL 구문이 좀 길다보니까, 한줄 넘어가는 케이스도 있을까봐 """ 이 문법을 썼습니다.

""" <--- 이게 좀 특이하긴 한데, 말씀하신 멀티라인 지원이라고 보시면 좋을 것 같습니다. 저도 이 문법이 들어간 코드를 작성할 때는 헷깔려서 여러차례 코드를 고쳐서 실행하는 경우가 많았어요~~~