Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python을 사용하여 MySQL의 테이블에서 특정 값을 어떻게 업데이트할 수 있습니까?

<시간/>

표의 데이터는 오래되었을 수 있으며 일정 시간이 지나면 데이터를 변경해야 할 수 있습니다. 학생 테이블이 있고 학생 중 한 명이 주소를 변경했다고 가정합니다. 잘못된 데이터로 인한 문제가 발생하지 않도록 데이터베이스의 학생 주소를 변경해야 합니다.

MySQL의 "UPDATE" 문은 테이블의 일부 값을 업데이트하는 데 사용됩니다. SET 절은 열의 새 값을 설정하는 데 사용됩니다. WHERE 절은 테이블에서 데이터 또는 값을 업데이트해야 하는 위치를 식별하는 데 사용됩니다.

구문

UPDATE table_name SET column=new_value WHERE column=old_value

파이썬에서 MySQL을 사용하여 테이블의 데이터를 업데이트하는 단계

  • MySQL 커넥터 가져오기

  • connect()를 사용하여 커넥터와 연결 설정

  • cursor() 메소드를 사용하여 커서 객체 생성

  • 적절한 mysql 문을 사용하여 쿼리 생성

  • execute() 메서드를 사용하여 SQL 쿼리 실행

  • commit() 메서드를 사용하여 변경 사항을 커밋합니다.

  • 연결을 끊다

다음과 같이 "Student"라는 테이블이 있다고 가정합니다. -

+----------+---------+----------+------------+ | 이름 | 수업 | 도시 | 표시 |+----------+---------+----------+------------+| 카란 | 4 | 암리차르 | 95 || 사힐 | 6 | 암리차르 | 93 || 크리티 | 3 | 바탈라 | 88 || 쿠시 | 9 | 델리 | 90 || 키라트 | 5 | 델리 | 85 |+----------+---------+-----------+------------+ 

예시

위의 학생 테이블이 있고 Kriti 시를 Batala에서 Kolkata로 업데이트하려고 한다고 가정합니다.

 import mysql.connectordb=mysql.connector.connect(host="your host", user="your username", password="yourpassword",database="database_name")cursor=db.cursor()query=" UPDATE Students SET City='Kolkata' WHERE Name='Kriti'"cursor.execute(query)db.commit()query="SELECT * FROM Students"cursor.execute(query) for row in cursor:print(row)db .close()

위의 코드는 Kriti의 도시 이름을 업데이트합니다.

출력

('Karan', 4 ,'Amritsar' , 95)('Sahil' , 6 , 'Amritsar' ,93)('Kriti' , 3 , 'Kolkata' ,88)('Amit' , 9 , ' 델리' , 90)('프리야' , 5 , '델리' ,85)

참고

db.commit() 위의 코드에서 중요합니다. 테이블에 대한 변경 사항을 커밋하는 데 사용됩니다. commit()을 사용하지 않으면 테이블이 변경되지 않습니다.