Train_Code1/data/database.py

42 lines
1.3 KiB
Python

import pandas as pd
import sqlite3
class DataLoader:
def __init__(self, db_path='datas.db'):
self.db_path = db_path
def load_data_from_excel(self, excel_path):
# 엑셀 파일 읽기
df = pd.read_excel(excel_path)
# 데이터베이스 연결
conn = sqlite3.connect(self.db_path)
cursor = conn.cursor()
# 테이블 생성
cursor.execute('''
CREATE TABLE IF NOT EXISTS CircuitBreakers (
id INTEGER PRIMARY KEY,
symbol TEXT,
english_name TEXT,
korean_name TEXT,
function_description TEXT,
position TEXT
)
''')
# 데이터 삽입
for _, row in df.iterrows():
cursor.execute('''
INSERT INTO CircuitBreakers (id, symbol, english_name, korean_name, function_description, position)
VALUES (?, ?, ?, ?, ?, ?)
''', (row['순서'], row['기호'], row['원어'], row['명칭'], row['기능설명'], row['위치'], row['도입년월'], row['도입명칭'], row['제작사']))
# 데이터베이스 저장 및 닫기
conn.commit()
conn.close()
# # 예제 사용
# loader = DataLoader()
# loader.load_data_from_excel('path_to_excel_file.xlsx')