Merhabalar.
Aşağıdaki kodu çalıştıramıyorum. Hata alıyor. Nedenini bulamadım. Şimdiden teşekkürler.
#---------------------------KÜTÜPHANE----------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
import sys
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import *
#---------------------------UYGULAMA OLUŞTUR---------------------------------------------------#
#----------------------------------------------------------------------------------------------#
Uygulama=QApplication(sys.argv)
penAna=QMainWindow()
#----------------------------------------------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
txt=QLabel(penAna)
txt.setText("Adınız ")
txt.move(30,120)
txt.resize(100,20)
txt1=QLabel(penAna)
txt1.setText("Soyadınız ")
txt1.move(30,150)
txt1.resize(100,20)
veriAd=QLineEdit(penAna)
veriAd.move(120,120)
veriAd.resize(100,20)
verisoyAd=QLineEdit(penAna)
verisoyAd.move(120,150)
verisoyAd.resize(100,20)
buton1=QPushButton(penAna)
buton1.setText("Kaydet")
buton1.move(120,180) # soldan uzaklık,yukardan uzaklık
buton1.resize(100,20) # genişlik,yükseklik
#----------------------------------------------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
penAna.setGeometry(100,100,400,400)
penAna.setWindowTitle("Form")
penAna.show()
#---------------------------VERİTABANI OLUŞTUR-------------------------------------------------#
#----------------------------------------------------------------------------------------------#
import sqlite3
global curs
global conn
conn=sqlite3.connect('rehber.db')
curs=conn.cursor()
crtKisi=("CREATE TABLE IF NOT EXISTS kisi \
( ID INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,\
AD TEXT , \
SOYAD TEXT)")
curs.execute(crtKisi)
conn.commit()
#---------------------------KAYDET-------------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
def EKLE():
_lneAd=veriAd.text()
_lnesoyAd=verisoyAd.text()
curs.execute("INSERT INTO kisi (AD,SOYAD) VALUES (?,?)", \
(_lneAd))
conn.commit()
#----------------------------------------------------------------------------------------------#
buton1.clicked.connect(EKLE)
#----------------------------------------------------------------------------------------------#
sys.exit(Uygulama.exec_())
aib
Kasım 17, 2021, 7:28öö
2
Satirlarin arasi cift bosluk (iki enter) olmus, o yuzden \
'ler calismiyor. Tek bosluga indirip tekrar dene.
1 Beğeni
Cevap için teşekkürle. Şimdi de aşağıdaki hatayı alıyorum. (Daha önce de bu hatayı alıyordum). Olmadı yani.
Traceback (most recent call last):
File “C:\Users\ilsim\OneDrive\Masa³st³\Yeni klas÷r\aaaaa\tmyo\deneme.py”, line 76, in EKLE
curs.execute(“INSERT INTO kisi (AD,SOYAD) VALUES (?,?)”,(_lneAd),(_lnesoyAd))
TypeError: execute expected at most 2 arguments, got 3
aib
Kasım 18, 2021, 11:21öö
4
Ben hala ayni hatayi aliyorum cunku kodun duzelmis halini yazmadin.
Bu arada hatayi aldigin kod ile yukaridaki kod arasinda bosluklar disinda farklar da goruyorum.
Soru sorarken her zaman, hatayi alan kodun tamamini , oldugu gibi atman lazim.
Hata mesajinin tamamini, oldugu gibi paylasmak da iyi bir aliskanlik ve su an yardim edebilmemizi sagliyor: execute
'a parametreleri tuple olarak yollaman lazim: execute("SELECT ?, ?, ?", (a, b, c))
gibi. Senin _lneAd ve Soyad ayri argumanlar olmus.
Merhaba kodlarınızı buraya göre düzenleyip tekrar atarsanız kodunuzu daha kolay deneyebiliriz
Sanırım bu şekilde olacak.Umarım olmuştur.
#---------------------------KÜTÜPHANE----------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
import sys
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import *
#---------------------------UYGULAMA OLUŞTUR---------------------------------------------------#
#----------------------------------------------------------------------------------------------#
Uygulama=QApplication(sys.argv)
penAna=QMainWindow()
#----------------------------------------------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
txt=QLabel(penAna)
txt.setText("Adınız ")
txt.move(30,120)
txt.resize(100,20)
txt1=QLabel(penAna)
txt1.setText("Soyadınız ")
txt1.move(30,150)
txt1.resize(100,20)
veriAd=QLineEdit(penAna)
veriAd.move(120,120)
veriAd.resize(100,20)
verisoyAd=QLineEdit(penAna)
verisoyAd.move(120,150)
verisoyAd.resize(100,20)
buton1=QPushButton(penAna)
buton1.setText("Kaydet")
buton1.move(120,180) # soldan uzaklık,yukardan uzaklık
buton1.resize(100,20) # genişlik,yükseklik
#----------------------------------------------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
penAna.setGeometry(100,100,400,400)
penAna.setWindowTitle("Form")
penAna.show()
#---------------------------VERİTABANI OLUŞTUR-------------------------------------------------#
#----------------------------------------------------------------------------------------------#
import sqlite3
global curs
global conn
conn=sqlite3.connect('rehber.db')
curs=conn.cursor()
crtKisi=("CREATE TABLE IF NOT EXISTS deney ( AD TEXT,SOYAD TEXT)")
curs.execute(crtKisi)
conn.commit()
#---------------------------KAYDET-------------------------------------------------------------#
#----------------------------------------------------------------------------------------------#
def EKLEM():
_lneAd=veriAd.text()
_lnesoyAd=verisoyAd.text()
curs.execute("INSERT INTO deney (AD,SOYAD) VALUES (?,?)",
(_lneAd),(_lnesoyAd))
conn.commit()
#----------------------------------------------------------------------------------------------#
buton1.clicked.connect(EKLEM)
#----------------------------------------------------------------------------------------------#
sys.exit(Uygulama.exec_())
aib
Kasım 19, 2021, 6:22öö
8
Son mesajimin son paragrafinda belirttigim hata devam ediyor.
Asif
Ağustos 8, 2022, 7:34ös
9
curs.execute("INSERT INTO deney (AD,SOYAD) VALUES (?,?)", (_lneAd),(_lnesoyAd) )
kısmınını şu şekilde düzenle, dene
curs.execute("INSERT INTO deney (AD,SOYAD) VALUES (?,?)", (_lneAd , _lnesoyAd) )