본문 바로가기
MySql

MySQL Python mysqldb를 사용하여 한 번에 여러 행을 삽입하는 방법

by 베이스 공부 2021. 1. 17.
반응형

목록 목록이 있습니다 (예 : [[ 'a', 'b'], [ 'c', 'd']] ).

T 라는 테이블과 F1 , F2 두 개의 필드가 있습니다. 필드 목록의 첫 번째 항목은 F1 에 매핑되고 두 번째 항목은 F2 에 매핑됩니다.

이와 같은 for 루프를 사용하는 대신 단일 명령 또는 호출에서 각 내부 목록에 대한 행을 삽입하려면 어떻게해야합니까?

for i in [['a','b'],['c','d']]:
    c.execute("insert into T (F1,F2) values (%s, %s)", (i[0], i[1]))

 

해결 방법

 


c.executemany(
      """INSERT INTO breakfast (name, spam, eggs, sausage, price)
      VALUES (%s, %s, %s, %s, %s)""",
      [
      ("Spam and Sausage Lover's Plate", 5, 1, 8, 7.95 ),
      ("Not So Much Spam Plate", 3, 2, 0, 3.95 ),
      ("Don't Wany ANY SPAM! Plate", 0, 4, 3, 5.95 )
      ] )

그래서 귀하의 경우 :

c.executemany("insert into T (F1,F2) values (%s, %s)",
    [('a','b'),('c','d')])

 

참조 페이지 https://stackoverflow.com/questions/14011160

 

 

반응형

댓글