PyQT5 ile tablodan veri sorgularken, içeriyorsa getirsin nasıl yapılır?

Merhaba arkadaşlar.



Filtre ile getirmekte bir sorun yok ama ürün adı kısmında, ürünün adını tam yazmak gerekiyor. Ben içeriyorsa da getirmesini nasıl yapabilirim? Mesela fa yazınca da gelmesini istiyorum. Nasıl yapabilirim?

Filtreleme kodları:

def gecmisAlisverisler_sorgu(self):

        bilgi = self.arayuz.gecmisAlisverisler_aramaTextBox.text()

        if self.arayuz.gecmisAlisverisler_barkodRadioButton.isChecked() == True:

            dbcur.execute("SELECT * FROM gecmisAlisverisler WHERE urunBarkodu = ?", (bilgi,))

            self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setRowCount(0)

            self.row = 0

            for row in dbcur:

                self.row += 1

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setRowCount(self.row)

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 0, QTableWidgetItem(row[0]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 1, QTableWidgetItem(row[1]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 2, QTableWidgetItem(row[2]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 3, QTableWidgetItem(row[3]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 4, QTableWidgetItem(row[4]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 5, QTableWidgetItem(row[5]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 6, QTableWidgetItem(row[6]))

               

        if self.arayuz.gecmisAlisverisler_urunAdiRadioButton.isChecked() == True:

            dbcur.execute("SELECT * FROM gecmisAlisverisler WHERE urunAdi = ?", (bilgi,))

            self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setRowCount(0)

            self.row = 0

            for row in dbcur:

                self.row += 1

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setRowCount(self.row)

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 0, QTableWidgetItem(row[0]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 1, QTableWidgetItem(row[1]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 2, QTableWidgetItem(row[2]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 3, QTableWidgetItem(row[3]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 4, QTableWidgetItem(row[4]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 5, QTableWidgetItem(row[5]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 6, QTableWidgetItem(row[6]))

               

        if self.arayuz.gecmisAlisverisler_kategoriRadioButton.isChecked() == True:

            dbcur.execute("SELECT * FROM gecmisAlisverisler WHERE kategori = ?", (self.arayuz.gecmisAlisverisler_kategoriSecimiComboBox.currentText(),))

            self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setRowCount(0)

            self.row = 0

            for row in dbcur:

                self.row += 1

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setRowCount(self.row)

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 0, QTableWidgetItem(row[0]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 1, QTableWidgetItem(row[1]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 2, QTableWidgetItem(row[2]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 3, QTableWidgetItem(row[3]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 4, QTableWidgetItem(row[4]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 5, QTableWidgetItem(row[5]))

                self.arayuz.gecmisAlisverisler_gecmisAlisverislerListBox.setItem(self.row - 1, 6, QTableWidgetItem(row[6]))

Sql like ile yapılabilir (Tablo adı, kolon adı ve textbox kısımlarını kendinize göre ayarlarsanız):

dbcur.execute("SELECT urun_adi FROM urunler WHERE urun_adi LIKE "+"'%"+str(textbox'dan gelen değer)+"%'")
1 Beğeni