41 lines
1.0 KiB
Python
41 lines
1.0 KiB
Python
# backend/init_db.py
|
|
import sqlite3
|
|
import os
|
|
|
|
# 获取当前文件所在目录
|
|
basedir = os.path.abspath(os.path.dirname(__file__))
|
|
db_path = os.path.join(basedir, '..', 'data', 'cars.db')
|
|
|
|
# 创建数据目录(如果不存在)
|
|
os.makedirs(os.path.dirname(db_path), exist_ok=True)
|
|
|
|
# 创建数据库连接
|
|
conn = sqlite3.connect(db_path)
|
|
# 确保使用UTF-8编码
|
|
conn.execute('PRAGMA encoding = "UTF-8"')
|
|
cursor = conn.cursor()
|
|
|
|
# 创建车辆表
|
|
cursor.execute('''
|
|
CREATE TABLE IF NOT EXISTS cars (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
plate TEXT UNIQUE NOT NULL,
|
|
phone TEXT NOT NULL,
|
|
brand TEXT NOT NULL
|
|
)
|
|
''')
|
|
|
|
# 插入示例数据
|
|
sample_cars = [
|
|
("京B67890", "131-2222-2222", "本田雅阁"),
|
|
("沪C11111", "132-3333-3333", "大众帕萨特"),
|
|
("浙D22222", "133-4444-4444", "奔驰E级")
|
|
]
|
|
|
|
cursor.executemany('INSERT OR IGNORE INTO cars (plate, phone, brand) VALUES (?, ?, ?)', sample_cars)
|
|
|
|
# 提交更改并关闭连接
|
|
conn.commit()
|
|
conn.close()
|
|
|
|
print("数据库初始化完成") |