PyQt5之SQLite数据库操作(1)

这篇博客介绍了如何使用PyQt5进行SQLite数据库操作,包括连接数据库、新建表、插入数据和查询数据的步骤。重点讲解了QSqlQuery类在执行SQL语句中的应用,如exec_()函数的使用,以及如何判断查询操作是否成功。同时,提到了SQLite对批量处理和单一语句执行的限制。

连接数据库

导入库文件

from PyQt5 import QtSql
from PyQt5.QtSql import QSqlQuery

QtSql类即QT中的QSqlDatabase类,用于处理与数据库的连接

QSqlQuery类提供了执行和操作SQL语句打方法


第一步连接sqlite数据库

database = QtSql.QSqlDatabase.addDatabase('QSQLITE')
database.setDatabaseName('test.db')
没有test.db这个文件的时候则会在当前目录新建一个test.db文件

打开数据库,打开成功返回True

database.open()


新建表

建立一个名为student的表,包含id,name,age三个属性,其中ID为主键

query.prepare('create table student (id int primary key, name varchar(30),age int)')
if not query.exec_():
    query.lastError()
else:
    print('create a table')

插入数据

addBindValue()将值添加到列表中,调用顺序决定添加的顺序
insert_sql = 'insert into 
PyQt5是一个跨平台的GUI工具包,它允许你使用Python语言创建窗口应用程序,而SQLite是一个轻量级的数据库引擎,广泛用于嵌入式设备和移动应用中。在PyQt5中连接SQLite数据库主要涉及使用Python的标准SQLite库,因为PyQt5本身并不提供数据库连接功能。 以下是使用PyQt5连接SQLite数据库的基本步骤: 1. 安装PyQt5SQLite库(如果尚未安装): ``` pip install PyQt5 ``` 2. 在Python脚本中导入必要的模块: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget, QPushButton import sqlite3 ``` 3. 创建数据库连接和游标对象: ```python def connect_db(): conn = sqlite3.connect('example.db') # 连接到数据库,如果不存在则创建 return conn ``` 4. 创建数据库表(如果尚未存在): ```python def create_table(): conn = connect_db() cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS items (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL)''') conn.commit() conn.close() ``` 5. 在PyQt5应用程序中使用连接和游标对象: ```python class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle('PyQt5 SQLite Example') self.setGeometry(100, 100, 400, 300) # 创建UI组件,例如按钮用于执行数据库操作 self.button = QPushButton('Add Item', self) self.button.clicked.connect(self.add_item) layout = QVBoxLayout() layout.addWidget(self.button) container = QWidget() container.setLayout(layout) self.setCentralWidget(container) create_table() # 确保数据库表已经创建 def add_item(self): conn = connect_db() cursor = conn.cursor() cursor.execute('INSERT INTO items (name) VALUES (?)', ('Sample Item',)) conn.commit() conn.close() if __name__ == '__main__': app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) ``` 以上示例展示了如何在PyQt5应用程序中建立对SQLite数据库的连接,并进行基本的数据库操作。这里定义了一个简单的窗口,其中包含一个按钮,当点击按钮时,会向SQLite数据库的items表中插入一条记录。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值