> 데이터 베이스 > MySQL 튜토리얼 > Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

WBOY
풀어 주다: 2023-06-03 12:52:09
앞으로
1653명이 탐색했습니다.

시나리오 1: mysql에 데이터를 자주 쓸 필요는 없습니다

navicat 도구의 가져오기 마법사 기능을 사용하세요. 이 소프트웨어는 다양한 파일 형식을 지원하고, 파일 필드를 기반으로 자동으로 테이블을 생성하고, 쉽게 데이터를 삽입할 수 있으며 속도도 매우 빠릅니다.

Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

시나리오 2: 데이터가 증분적이므로 자동화하고 mysql에 자주 기록해야 합니다.

테스트 데이터: csv 형식, 약 1,200만 행

import pandas as pd
data = pd.read_csv('./tianchi_mobile_recommend_train_user.csv')
data.shape
로그인 후 복사

결과 인쇄

Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

방법 1

python + pymysql 라이브러리

pymysql 명령 설치

pip install pymysql
로그인 후 복사

코드 구현:

import pymysql

# 数据库连接信息
conn = pymysql.connect(
       host='127.0.0.1',
       user='root',
       passwd='wangyuqing',
       db='test01', 
       port = 3306,
       charset="utf8")

# 分块处理
big_size = 100000
# 分块遍历写入到 mysql    
with pd.read_csv('./tianchi_mobile_recommend_train_user.csv',chunksize=big_size) as reader:

    for df in reader:

        datas = []
        print('处理:',len(df))
#         print(df)
        for i ,j in df.iterrows():
            data = (j['user_id'],j['item_id'],j['behavior_type'],
                    j['item_category'],j['time'])
            datas.append(data)
        _values = ",".join(['%s', ] * 5)
        sql = """insert into users(user_id,item_id,behavior_type
        ,item_category,time) values(%s)""" % _values
        cursor = conn.cursor()
        cursor.executemany(sql,datas)
        conn.commit()
 # 关闭服务      
conn.close()
cursor.close()
print('存入成功!')
로그인 후 복사

Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

방법 2

pandas + sqlalchemy: pandas는 sql을 지원하기 위해 sqlalchemy를 도입해야 합니다. 데이터베이스 유형 쿼리, 업데이트 및 기타 작업.

코드 구현:

from sqlalchemy import create_engine
engine = create_engine('mysql+pymysql://root:wangyuqing@localhost:3306/test01')
data = pd.read_csv('./tianchi_mobile_recommend_train_user.csv')
data.to_sql('user02',engine,chunksize=100000,index=None)
print('存入成功!')
로그인 후 복사

Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?

위 내용은 Python에서 MySQL 데이터베이스에 쓰는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿