在 python 中对数据库使用 if 语句
Using if statement with database in python
veri = sqlite3.connect('IBCKayıt')
v = veri.cursor()
v.execute("SELECT numsıra FROM kayıtlar WHERE EXISTS(SELECT * FROM kayıtlar WHERE numsıra)")
record = v.fetchall()
if numaraentry.get() in record:
messagebox.showinfo("UYARI","Bu IBC Zaten Var")
if numaraentry.get() not in record:
v.execute("INSERT INTO kayıtlar VALUES (:numsıra, :koruyucutarih, :numunedurumm, :kullandurumm)",
{'numsıra':numaraentry.get(),
'koruyucutarih':tarıhgırıs,
'numunedurumm':secılmıs1.get(),
'kullandurumm':secılmıs.get()
})
messagebox.showinfo("UYARI","Kayıt İşlemi Başarılı.")
veri.commit()
veri.close()
我想让它在输入相同的数据时发出警告,但是当我输入相同的数据时它不发出警告。您认为解决方案是什么?
-我是表格的新手,我想我不知道如何打开话题,抱歉。
您的第一个查询没有多大意义;你会想在那里使用 WHERE
。
类似
veri = sqlite3.connect("IBCKayıt")
num = numaraentry.num()
v = veri.cursor()
v.execute("SELECT numsıra FROM kayıtlar WHERE numsıra = ? LIMIT 1", (num,))
records = v.fetchall()
if records: # had a matching row, show error
messagebox.showinfo("UYARI", "Bu IBC Zaten Var")
else:
v.execute(
"INSERT INTO kayıtlar VALUES (:numsıra, :koruyucutarih, :numunedurumm, :kullandurumm)",
{
"numsıra": num,
"koruyucutarih": tarıhgırıs,
"numunedurumm": secılmıs1.num(),
"kullandurumm": secılmıs.num(),
},
)
veri.commit()
messagebox.showinfo("UYARI", "Kayıt İşlemi Başarılı.")
veri.close()
应该可以解决问题。
veri = sqlite3.connect('IBCKayıt')
v = veri.cursor()
v.execute("SELECT numsıra FROM kayıtlar WHERE EXISTS(SELECT * FROM kayıtlar WHERE numsıra)")
record = v.fetchall()
if numaraentry.get() in record:
messagebox.showinfo("UYARI","Bu IBC Zaten Var")
if numaraentry.get() not in record:
v.execute("INSERT INTO kayıtlar VALUES (:numsıra, :koruyucutarih, :numunedurumm, :kullandurumm)",
{'numsıra':numaraentry.get(),
'koruyucutarih':tarıhgırıs,
'numunedurumm':secılmıs1.get(),
'kullandurumm':secılmıs.get()
})
messagebox.showinfo("UYARI","Kayıt İşlemi Başarılı.")
veri.commit()
veri.close()
我想让它在输入相同的数据时发出警告,但是当我输入相同的数据时它不发出警告。您认为解决方案是什么?
-我是表格的新手,我想我不知道如何打开话题,抱歉。
您的第一个查询没有多大意义;你会想在那里使用 WHERE
。
类似
veri = sqlite3.connect("IBCKayıt")
num = numaraentry.num()
v = veri.cursor()
v.execute("SELECT numsıra FROM kayıtlar WHERE numsıra = ? LIMIT 1", (num,))
records = v.fetchall()
if records: # had a matching row, show error
messagebox.showinfo("UYARI", "Bu IBC Zaten Var")
else:
v.execute(
"INSERT INTO kayıtlar VALUES (:numsıra, :koruyucutarih, :numunedurumm, :kullandurumm)",
{
"numsıra": num,
"koruyucutarih": tarıhgırıs,
"numunedurumm": secılmıs1.num(),
"kullandurumm": secılmıs.num(),
},
)
veri.commit()
messagebox.showinfo("UYARI", "Kayıt İşlemi Başarılı.")
veri.close()
应该可以解决问题。