Я пытаюсь добавить информацию в базу данных (sqlite3, python 3.6)
Я без проблем создал виджет tkinter, но у меня возникла проблема с сохранением информации, собранной из виджета ввода, и ее сохранением в базе данных
#!/usr/bin/python3
# -*- coding: utf-8 -*-
from tkinter import *
import sqlite3
master=Tk()
master.geometry('450x300')
master.title('add into database')
var_Name=StringVar()
var_Street=StringVar()
var_City=StringVar()
CreateDataBase = sqlite3.connect('MyDataBase.db')
QueryCurs = CreateDataBase.cursor()
#to create a table (Clients)
def CreateTable():
QueryCurs.execute('''CREATE TABLE IF NOT EXISTS Clients
(id INTEGER PRIMARY KEY, Name TEXT,Street TEXT,Town TEXT)''')
def AddEntry(Nom,Rue,Ville):
QueryCurs.execute('''INSERT INTO Clients (Name,Street,Town)
VALUES (?,?,?)''',(str(var_Name.get()),str(var_Street.get()),str(var_City.get())))
CreateTable()
label_Name=Label(master, text ='enter your name :')
label_Name.pack()
entry_Name=Entry(master,textvariable=var_Name)
entry_Name.pack()
label_Street=Label(master, text ='enter street :')
label_Street.pack()
entry_Street=Entry(master,textvariable=var_Street)
entry_Street.pack()
label_City=Label(master, text ='enter city :')
label_City.pack()
entry_City=Entry(master,textvariable=var_City)
entry_City.pack()
btn_Valider=Button(master,text='validate', command=AddEntry)
btn_Valider.pack()
CreateDataBase.commit()
QueryCurs.execute('SELECT * FROM Clients ORDER BY id DESC')
for i in QueryCurs:
print ("\n")
for j in i:
print (j)
QueryCurs.close()
master.mainloop()
когда я тестирую код, у меня появляется эта ошибка:
TypeError: AddEntry() missing 3 required positional arguments: 'Name', 'Street', and 'City'
мне нужна помощь
спасибо