python创建一个 sQLite 数据库文件和一个包含5列的数据表,然后编写程序,创建 58 个结构相同的 xLSx 格式 EXGe1 文件,每个文件中有5列300行随机字符串,再把这些Excel文件中的数据导入SQLite数据库中。
时间: 2025-06-14 17:18:41 浏览: 6
在Python中,我们可以使用sqlite3库来创建SQLite数据库和数据表,pandas库来处理Excel文件以及random库来生成随机字符串。以下是一个简单的步骤说明:
**步骤1:创建SQLite数据库和数据表**
```python
import sqlite3
# 创建数据库文件(如果不存在)
conn = sqlite3.connect('my_database.db')
# 创建数据表
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS my_table
(column1 TEXT, column2 TEXT, column3 TEXT, column4 TEXT, column5 TEXT)''')
# 关闭游标
cursor.close()
# 关闭连接
conn.close()
```
**步骤2:创建Excel文件**
```python
import pandas as pd
from random import choice
import string
# 定义一个函数来生成随机字符串
def generate_random_string(length):
return ''.join(choice(string.ascii_letters + string.digits) for _ in range(length))
# 创建一个空DataFrame用于存储数据
data = {'column1': [], 'column2': [], 'column3': [], 'column4': [], 'column5': []}
for i in range(58):
df = pd.DataFrame(data, index=[f"Row_{i+1}"]*300) # 生成300行
for col_name in data.keys():
df[col_name] = [generate_random_string(10)] * 300 # 随机字符串长度设为10
df.to_excel(f"data_{i+1}.xlsx", index=False) # 保存为Excel文件
```
**步骤3:从Excel导入SQLite数据库**
```python
# 初始化一个新的连接
conn = sqlite3.connect('my_database.db')
cursor = conn.cursor()
# 插入数据到数据库
for i in range(1, 59): # 从2开始,因为第一个已经创建了表格
df = pd.read_excel(f'data_{i}.xlsx')
for _, row in df.iterrows():
insert_query = f"INSERT INTO my_table VALUES (?, ?, ?, ?, ?)"
cursor.execute(insert_query, tuple(row))
# 提交事务
conn.commit()
# 关闭连接
cursor.close()
conn.close()
```
阅读全文