qtableview 映射 sqlite数据库,提交时以指定格式提交数据
时间: 2023-05-23 18:00:51 浏览: 85
可以使用以下代码将 qtableview 映射到 sqlite 数据库,并将数据以指定格式提交:
```python
import sqlite3
# 创建数据库连接
conn = sqlite3.connect('database.db')
c = conn.cursor()
# 创建表
c.execute('''CREATE TABLE IF NOT EXISTS MyTable
(col1 TEXT, col2 TEXT, col3 TEXT)''')
# 建立映射
def get_data(row, column):
model = table.model()
item = model.index(row, column).data()
return item
# 提交数据
def submit_data():
model = table.model()
num_rows = model.rowCount()
for i in range(num_rows):
row_data = []
for col in range(model.columnCount()):
row_data.append(get_data(i, col))
# 将数据以指定格式提交
data_string = '\t'.join(row_data)
# 将数据插入数据库
c.execute("INSERT INTO MyTable (col1, col2, col3) VALUES (?, ?, ?)", (row_data[0], row_data[1], row_data[2]))
# 关闭连接
conn.commit()
conn.close()
```
这段代码使用了 `sqlite3` 模块来创建和管理数据库,通过 `table.model()` 方法获取数据并提交到数据库中。
阅读全文