[SQL] 13-12 실습

JONGYOON JEON·2024년 2월 9일
0

SQL

목록 보기
7/13

이번에는 강의를 거의 보지 않고 혼자 해봤다.
지금까지 했던 것들을 잘 이해하고 있는지 도전.
멍청한 실수를 하나 했지만, fetchall() 이나 iterrows()에 대해서는 어느 정도 이해한 것 같다.

aws 연결

import mysql.connector
import pandas as pd

remote = mysql.connector.connect(
    host = "database-1.cfs2cmwe6vbi.ap-southeast-2.rds.amazonaws.com",
    port = 3306,
    user = "admin",
    password = "=====**",
    database = "zerobase"
)

cur = remote.cursor(buffered=True)

pandas로 csv 가져오기

df = pd.read_csv("Seoul_CCTV.csv")
df.tail()
print(df)

CREATE TABLE

sql = "CREATE table Seoul_CCTV(기관명 varchar(8), 소계 int, 2013년도 이전 int, 2014년 int, 2015년 int, 2016년 int)"
cur.execute(sql)

INSERT INTO

sql2 = "INSERT INTO cctv VALUES (%s, %s, %s, %s, %s,%s)"
cur = remote.cursor(buffered=True)
for i, row in df.iterrows():
    cur.execute(sql2, tuple(row))
    print(tuple(row))
    remote.commit()

SELECT, fetchall()

sql3 = "SELECT * FROM cctv"
cur = remote.cursor(buffered=True)
cur.execute(sql3)

result = cur.fetchall()
for i in result:
    print(i)

pd.DataFrame()

df = pd.DataFrame(result)
df.head()

remote.close()

profile
효율적인 걸 좋아해요

0개의 댓글