산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> python

파이썬과 MySQL: 데이터베이스 연결, 생성, CRUD 실전 가이드

파이썬과 MySQL: 데이터베이스 연결, 생성, CRUD 실전 가이드

오늘날 데이터 중심 세상에서 파이썬 개발자는 관계형 데이터베이스와 상호작용해야 할 때가 많습니다. MySQL은 오픈소스 RDBMS로 견고함, 커뮤니티 지원, 사용 편의성으로 여전히 인기 있는 선택입니다. 이 가이드는 MySQL과 파이썬 커넥터 설치부터 데이터베이스, 테이블 생성, 기본 CRUD 작업 수행까지 모든 단계를 안내하며 모범 사례와 깔끔한 코드를 강조합니다.

MySQL이란?

MySQL은 선도적인 오픈소스 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 공동 창업자 Michael Widenius가 딸 이름에서 따와 1995년에 만들었습니다. SQL 기반 인터페이스, 강력한 성능, 크로스 플랫폼 지원으로 웹 애플리케이션, 데이터 분석 등에 널리 쓰입니다.

리눅스/유닉스에 MySQL 설치

공식 RPM 패키지를 MySQL 다운로드에서 다운로드. 터미널에서 실행:

rpm -i 

예: rpm -i MySQL-5.0.9.0.i386.rpm

설치 확인:

mysql --version

윈도우에 MySQL 설치

같은 MySQL 웹사이트에서 윈도우 인스톨러 다운로드 후 마법사 따라 설치. 단계별 시각 가이드는 공식 튜토리얼 참조.

파이썬용 MySQL 커넥터 설치

pip로 커넥터 라이브러리 설치. 파이썬 2와 3에서 명령 약간 다름:

pip install mysql-connector
pip3 install mysql-connector

MySQL 연결 테스트

커넥터 설치 후 간단한 연결 객체 생성으로 연결 테스트. hostname, username, password를 본인 자격증명으로 교체.

import mysql.connector
conn = mysql.connector.connect(
    host="hostname",
    user="username",
    passwd="password"
)
print(conn)

성공 시 출력 예:

<mysql.connector.connection.MySQLConnection object at 0x...>

파이썬으로 데이터베이스 생성

커서 객체로 CREATE DATABASE 문 실행:

import mysql.connector
conn = mysql.connector.connect(
    host="localhost",
    user="root",
    passwd="root"
)
cursor = conn.cursor()
cursor.execute("CREATE DATABASE my_first_db")
cursor.execute("SHOW DATABASES")
for db in cursor:
    print(db)

출력: ("my_first_db",)

테이블 생성

단순 테이블

두 컬럼 가진 student 테이블 생성:

cursor.execute("CREATE TABLE student (id INT, name VARCHAR(255))")
cursor.execute("SHOW TABLES")
for tbl in cursor:
    print(tbl)

출력: ("student",)

기본 키 있는 테이블

자동 증가 기본 키 포함 employee 테이블 정의:

cursor.execute("CREATE TABLE employee (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), salary INT(6))")
cursor.execute("SHOW TABLES")
for tbl in cursor:
    print(tbl)

출력: ("employee",) ("student",)

테이블 변경

기존 컬럼을 기본 키로 변경:

cursor.execute("ALTER TABLE student MODIFY id INT PRIMARY KEY")

테이블 설명이나 스키마 직접 확인으로 검증 가능.

데이터 삽입

두 테이블에 행 삽입:

student_sql = "INSERT INTO student(id, name) VALUES (1, 'John')"
employee_sql = "INSERT INTO employee(id, name, salary) VALUES (1, 'John', 10000)"
cursor.execute(student_sql)
cursor.execute(employee_sql)
conn.commit()
print(cursor.rowcount, "Record Inserted")

출력: 2 Record Inserted

다음 단계

여기서 업데이트, 삭제, 더 고급 쿼리 탐색 가능. 완료 시 연결 닫기 잊지 마세요:

conn.close()

해피 코딩!

python

  1. Python strip() 메서드 완전 정복: 종합 가이드와 실전 예제
  2. Python str.count() 마스터하기: 문자 및 부분문자열 개수 세기 예제
  3. Python format() 문자열 마스터하기: 명확한 예제로 완전 정복
  4. Python String.find() 메서드 마스터하기: 문법, 예제, 대안 비교
  5. 파이썬 람다 함수 마스터하기: 실용 예제 & 모범 사례
  6. 파이썬 round() 함수 완전 정복: 실용 예제로 이해하기
  7. 파이썬 map() 함수 마스터하기: 문법, 예제, 모범 사례
  8. 파이썬 timeit()으로 실행 시간 측정하기: 실용 예제
  9. 파이썬 collections.Counter: 효율적 카운팅, 업데이트, 산술 연산
  10. 파이썬 type()과 isinstance() 이해하기: 실전 예제