테스트를 위해 데이터 1000개 정도가 필요했고, 하나하나 수동으로 추가할 수 없고, 추후 또 사용하게 될 수도 있으니 python으로 스크립트를 만들게 되었다.
$ pip install pymysql
db_connection =pymysql.connect(host=HOST,
port=int(PORT),
user=USER,
password=PASSWORD,
db=DB,
charset=CHARSET)
def add_data():
try:
with db_connection.cursor() as cursor:
for i in range(COUNT):
//넣고 싶은 데이터
data_id = str(uuuid.uuid4())
data_name = name
//생략
data_query = 'INSERT INTO 테이블명 (id, name) VALUES (%s, %s)'
cursor.execute(data_query, (data_id, data_name)
db_connection.commit()
except Exception as e:
db_connection.rollback()
finally:
db_connection.close()
add_data()
차근차근 살펴보자면,
try, except 구문으로 구성해주고, db_connection.cursor()로 연결해준다.
그리고 db 속성에 맞춰 id값, name값을 예시로 들어 추가해주고
그에 맞는 query문을 작성한다.
INSERT INTO 테이블명 구문으로 테이블을 지정해주고, 거기에 id, name값을 넣을거기 때문에 속성 이름에 맞춰 넣어준다.
cursor.execute로 쿼리문과 함께 내가 설정한 데이터값을 넣어준다.
마지막으로 commit 해주면 끝!
만들어진 함수를 add_data()로 실행시켜주면 해당 데이터가 db에 들어가게 된다.
6. 근데 나는 1000개의 데이터를 추가하고 싶었으므로 for i in rance(COUNT) 구문을 넣어주었다.
7. COUNT, PORT, HOST 등 이러한 값들은 변경할 수 있으므로 변수로 상단에 선언해서 정리해주었다.
8. 마지막으로 add_data.py를 실행시키면 db에 데이터가 들어가게 되는 것을 확인할 수 있다.
$ python3 add_data.py
$ python add_data.py
test
ㄴadd_data.py //python 스크립트
ㄴadd.data.sh //python 스크립트 실행시키기 위한 sh 스크립트
ㄴREADME.md //python 스크립트 사용법 정리
ㄴdummy_data.csv // 테스트 데이터