Merhabalar,
Bu videodakine benzer bir yazılım yapmaya çalışıyorum. Fakat bir hatam var. Çözebilmiş değilim. Videodan vb. kontrol ediyorum ama bulamadım.
(12) SQLite Kullanımı - QT Designer Kullanıcı Arayüzü - YouTube
Video bu.
Benim yazdığım kodlar ise:
baglan.py:
import sqlite3 as sql
from typing import final
def main():
    try:
        db = sql.connect("bilgiler.db")
        print("Veri tabanına bağlanıldı.")
    except:
        print("Bağlantı hatası !!!!!")
    finally:
        db.close()
if __name__ == "__main__":
    main()
tabloOlustur.py
import sqlite3 as sql
from typing import final
def main():
    try:
        db = sql.connect("Bilgiler.db")
        cal = db.cursor()
        sorg = "CREATE TABLE TBilgiler (urunno int, alacakkisiadsoyad txt, telno int, esya txt, parca txt, yapilacaklar txt, fiyat int)"
        cal.execute(sorg)
        print("Tablo olustu")
    finally:
        print("Tamam islem")
if __name__ == "__main__":
    main()
Arayuz.py
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QTableWidgetItem, QHeaderView
from Ui_tamir import Ui_Dialog
import sys
import os
import sqlite3 as sql
os.system("python Baglan.py")
os.system("python TabloOlustur.py")
global urunno, alacakkisiadsoyad, telno, esya, parca, yapilacaklar, fiyat
class Window(QtWidgets.QMainWindow):
    def __init__(self):
        super(Window, self).__init__()
        self.ui = Ui_Dialog()
        self.ui.setupUi(self)
        self.formYukle()
        self.ui.kaydetButon.clicked.connect(self.butonKaydetTiklandi)
        self.ui.silButon.clicked.connect(self.sil)
    def formYukle(self):
        self.ui.eklenenlerTablo.clear()
        self.ui.eklenenlerTablo.setColumnCount(7)
        self.ui.eklenenlerTablo.setHorizontalHeaderLabels(("Urun NO", "Ad-soyad", "Telefon NO", "Esya", "Parca", "Yapilacaklar", "Fiyat"))
        self.ui.eklenenlerTablo.horizontalHeader().setSectionResizeMode(QtWidgets.QHeaderView.Stretch)
        db = sql.connect("bilgiler.db")
        cur = db.cursor()
        sorgu = "Select * from TBilgiler"
        cur.execute(sorgu)
        satirlar = cur.fetchall()
        self.ui.eklenenlerTablo.setRowCount(len(satirlar))
        for satirIndeks, satirVeri in enumerate(satirlar):
            for sutunIndeks, sutunVeri in enumerate(satirVeri):
                self.ui.eklenenlerTablo.setItem(satirIndeks, sutunIndeks, QTableWidgetItem(str(sutunVeri)))
    def butonKaydetTiklandi(self):
        urunno = self.ui.urunNoGiris.toPlainText()
        alacakkisiadsoyad = self.ui.urunNoGiris_2.toPlainText()
        telno = self.ui.telNoGiris.toPlainText()
        esya = self.ui.esyaGiris.toPlainText()
        parca = self.ui.parcaGiris.toPlainText()
        yapilacaklar = self.ui.yapilacaklarGiris.toPlainText()
        fiyat = self.ui.fiyatGiris.toPlainText()
        try:
            self.baglanti = sql.connect("bilgiler.db")
            self.c = self.baglanti.cursor()
            self.c.execute("INSERT INTO TBilgiler Values(?, ?, ?, ?, ?, ?, ?)", (urunno, alacakkisiadsoyad, telno, esya, parca, yapilacaklar, fiyat))
            self.baglanti.commit()
            self.c.close()
            print("Başarılı", "bilgiler başarıyla gönderildi")
        except:
            print("Hata", "Hata !!!!!!")
    def listeClick(self):
        self.ui.esyaGiris.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 0).text())
        self.ui.fiyatGiris.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 1).text())
        self.ui.parcaGiris.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 2).text())
        self.ui.telNoGiris.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 3).text())
        self.ui.urunNoGiris.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 4).text())
        self.ui.urunNoGiris_2.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 5).text())
        self.ui.yapilacaklarGiris.setText(self.ui.eklenenlerTablo.item(self.ui.eklenenlerTablo.currentRow(), 6).text())
    def sil(self):
        uruno = self.ui.urunNoGiris.toPlainText()
        
        self.baglanti = sql.connect("bilgiler.db")
        self.c = self.baglanti.cursor()
        self.c.execute("DELETE FROM TBilgiler where urunno = ?", (uruno, ))
        self.baglanti.commit()
        self.c.close()
        self.baglanti.close()
        print("Urun silindi")
        self.sil()
        self.formYukle()
def app():
    app = QtWidgets.QApplication(sys.argv)
    win = Window()
    win.show()
    sys.exit(app.exec_())
app()
Sorunlar:
- 
Videoda bir bilgi eklendiğinde direktmen listeye ekleniyor. Benim o ekleneni görebilmem için programı yeniden açmam gerek. Yani canlı olarak eklemiyor. 
- 
Tablodan bilgi silinmiyor. Tablodan birini seçtikten sonra “Sil” butonuna basıyorum ve konsola “Urun silindi” diye spam atıyor ve ayrıca satır 86’da olan self.sil()kodunda hata veriyor.
Yardımcı olursanız sevinirim.
 Özür dilerim gıcık ettiysem.
 Özür dilerim gıcık ettiysem.
