Python MySQL 데이터 단일 행, 다중 행 추가

한 행을 추가할 때는 execute(), 여러 행을 한 번에 추가할 때는 executemany()를 사용한다. 값은 SQL 문자열에 직접 붙이지 않고 파라미터로 전달한다.




단일 행 추가

sql = "INSERT INTO test_table (date_time, name, val1, val2) VALUES (%s, %s, %s, %s)"
row = ("2026-08-30 12:00:00", "test", 0, 1)

cursor.execute(sql, row)
connection.commit()




다중 행 추가

rows = [
    ("2026-08-30 12:00:00", "test", 0, 1),
    ("2026-08-30 12:00:00", "test", 0, 2),
    ("2026-08-30 12:00:00", "test", 0, 3),
]

cursor.executemany(sql, rows)
connection.commit()




여러 행을 반복문으로 하나씩 보내는 것보다 한 번에 전달하면 네트워크 왕복을 줄일 수 있다. 실패 시에는 예외를 처리하고 필요한 경우 rollback 한다.

Comments

댓글을 불러오고 있습니다.