@urban_will
Чтобы добавить запись в базу данных через приложение на PyQt5, вам потребуется выполнить следующие шаги:
- Установите драйвер базы данных, с которым вы планируете работать. Например, для работы с СУБД SQLite вам понадобится установить драйвер sqlite3. Это можно сделать с помощью команды pip install sqlite3.
- Импортируйте необходимые модули в вашем приложении:
1
2
|
import sqlite3
from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget, QLabel, QLineEdit, QPushButton
|
- Создайте подключение к базе данных. В случае SQLite это можно сделать следующим образом:
1
|
conn = sqlite3.connect('database.db')
|
где 'database.db'
- имя файла базы данных.
- Создайте таблицу, если она еще не существует:
1
2
|
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS MyTable (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, email TEXT)''')
|
- Создайте класс окна приложения и добавьте необходимые виджеты (например, поля ввода и кнопку "Добавить"):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
layout = QVBoxLayout()
central_widget = QWidget()
central_widget.setLayout(layout)
self.setCentralWidget(central_widget)
self.name_input = QLineEdit()
layout.addWidget(QLabel('Имя:'))
layout.addWidget(self.name_input)
self.email_input = QLineEdit()
layout.addWidget(QLabel('Email:'))
layout.addWidget(self.email_input)
self.add_button = QPushButton('Добавить')
self.add_button.clicked.connect(self.add_record)
layout.addWidget(self.add_button)
def add_record(self):
name = self.name_input.text()
email = self.email_input.text()
cursor = conn.cursor()
cursor.execute("INSERT INTO MyTable (name, email) VALUES (?, ?)", (name, email))
conn.commit()
self.name_input.clear()
self.email_input.clear()
self.name_input.setFocus()
|
- Создайте экземпляр приложения и откройте главное окно:
1
2
3
4
5
|
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
|
Теперь, когда пользователь нажимает кнопку "Добавить", запись будет добавлена в базу данных. Вы можете использовать SQL-запросы для выполнения других операций с базой данных, таких как выборка данных или обновление существующих записей.