본문 바로가기
프로그래밍/Python

파이썬 mssql update 방법

by wyatti 2023. 5. 17.

 

파이썬 mssql update 방법

파이썬에서 MSSQL 데이터베이스의 업데이트 작업은 데이터의 수정이 필요한 경우에 주로 사용됩니다. 업데이트는 특정 테이블의 레코드 값을 변경하거나 업데이트하는 작업을 의미합니다. 이번 가이드에서는 파이썬에서 MSSQL 데이터베이스의 업데이트 작업을 수행하는 방법과 코드 예제를 제공하겠습니다.

 

 

 

 

파이썬에서 MSSQL 데이터베이스의 업데이트 작업을 수행하기 위해서는 pyodbc 라이브러리를 사용할 수 있습니다. 이 라이브러리는 다양한 데이터베이스 시스템에 대한 연결과 쿼리 실행을 지원하며, MSSQL과의 상호작용을 간단하게 할 수 있습니다.

  • pyodbc 모듈을 import 합니다.
  • pyodbc.connect() 함수를 사용하여 MSSQL 데이터베이스에 연결합니다.
  • 연결 문자열에는 데이터베이스 서버 이름 (SERVER=server_name), 데이터베이스 이름 (DATABASE=database_name), 사용자 이름 (UID=username), 비밀번호 (PWD=password) 등의 정보를 포함해야 합니다.
  • 필요한 정보를 제공하여 데이터베이스에 성공적으로 연결합니다.
  • connection.cursor() 메서드를 사용하여 커서 객체를 생성합니다.
  • 이 커서는 SQL 쿼리 실행 및 결과 처리를 담당합니다. 업데이트할 테이블과 업데이트할 컬럼, 그리고 업데이트할 조건을 포함하는 SQL 업데이트 쿼리를 작성합니다. 예를 들어, customers 테이블에서 city 컬럼의 값을 'Seoul'로 업데이트하고, customer_id가 1인 레코드를 선택합니다.
  • cursor.execute() 메서드를 사용하여 업데이트 쿼리를 실행합니다. 이를 통해 데이터베이스에 실제 업데이트 작업이 수행됩니다. 변경된 내용을 데이터베이스에 반영하기 위해 connection.commit() 메서드를 호출하여 커밋합니다. 이 단계를 건너뛰면 변경 내용은 롤백됩니다.
  • cursor.rowcount 속성을 사용하여 업데이트로 영향을 받은 행의 수를 확인합니다. 이를 통해 업데이트 작업이 성공적으로 수행되었는지 확인할 수 있습니다.
  • 연결을 종료하기 위해 connection.close() 메서드를 호출합니다. 이렇게 하면 데이터베이스 연결이 안전하게 닫힙니다.

 

 

 

다음은 Python을 pyodbc 라이브러리와 함께 사용하여 MSSQL에서 업데이트 작업을 수행하는 방법을 보여주는 예제 코드입니다.

import pyodbc

# Connect to MSSQL database
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=server_name;DATABASE=database_name;UID=username;PWD=password')

# Create a cursor
cursor = conn.cursor()

# Update query
update_query = "UPDATE customers SET city = 'Seoul' WHERE customer_id = 1"

# Execute the update query
cursor.execute(update_query)

# Commit the changes
conn.commit()

# Check the number of affected rows
row_count = cursor.rowcount
print(f"Updated rows: {row_count}")

# Close the connection
conn.close()

 

 

 

pyodbc.connect에서 'server_name'에는 서버 IP, 'database_name'엔 DBName, 'username'엔 예를 들어 sa 또는 로그인 ID를 입력해 주고 'password'에는 로그인 ID의 비밀번호를 입력해 주면 됩니다.

이 예제에서는 먼저 pyodbc.connect() 함수를 사용하여 MSSQL 데이터베이스에 대한 연결을 설정하고 서버 이름, 데이터베이스 이름, 사용자 이름 및 암호와 같은 필요한 연결 세부 정보를 제공합니다.

그런 다음 SQL 쿼리를 실행하고 결과를 처리할 수 있는 connection.cursor() 메서드를 사용하여 커서를 만듭니다.

다음으로 update_query 변수에 업데이트 쿼리를 정의합니다. 쿼리는 customers 테이블의 city 열을 업데이트하고 customer_id가 1인 고객에 대해 '서울'로 설정합니다. 특정 요구 사항에 맞게 쿼리를 수정할 수 있습니다.

cursor.execute() 메서드는 업데이트 쿼리를 실행하는 데 사용됩니다. 변경 사항은 영구적으로 만들기 위해 connection.commit() 메서드를 사용하여 데이터베이스에 커밋됩니다.

또한 cursor.rowcount 속성을 사용하여 영향을 받는 행 수를 검색하고 인쇄하여 업데이트 작업의 성공 여부를 확인할 수 있습니다.

마지막으로 리소스를 해제하기 위해 connection.close() 메서드를 사용하여 데이터베이스 연결을 닫습니다.

특정 데이터베이스 구조 및 요구 사항에 따라 테이블, 열, 조건 및 업데이트 값을 변경하여 이 코드를 사용자 지정할 수 있습니다.

 

댓글