Tkinter SQlite Data Entry Python
step 1: Creating Database
import sqlite3
conn = sqlite3.connect('product.db')
conn.execute('''CREATE TABLE PRODUCTS
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
PRICE INT NOT NULL );''')
conn.close()
Step 2: Inserting Values
import sqlite3
conn = sqlite3.connect('product.db')
conn.execute("INSERT INTO PRODUCTS (ID,NAME,PRICE) \
VALUES (1, 'SAMSUNG', 20000.00 )");
conn.commit()
conn.close()
Step 3: TKinter Code
from tkinter import *
from tkinter import ttk
import sqlite3
conn = sqlite3.connect('product.db')
root = Tk()
root.geometry('600x500')
tree = ttk.Treeview(root,column=("c1","c2","c3"),show='headings',height=8)
tree.column("#1",anchor=CENTER)
tree.heading("#1",text ="ID")
tree.column("#2",anchor=CENTER)
tree.heading("#2",text ="Product Name")
tree.column("#3",anchor=CENTER)
tree.heading("#3",text ="Price(USD)")
tree.pack(side=TOP)
def Data():
for item in tree.get_children():
tree.delete(item)
cursor = conn.execute("SELECT * FROM PRODUCTS")
for row in cursor:
tree.insert('','end',text="1",values=(row))
def price_check():
for item in tree.get_children():
tree.delete(item)
price = v.get()
cursor = conn.execute(f"SELECT * FROM PRODUCTS WHERE PRICE >={price}")
for price in cursor:
tree.insert('','end',text="1",values=price)
def data_form():
top = Toplevel()
top.geometry('600x500')
top.title("Data Form")
def data_submit():
r =(en.get(),en1.get(),en2.get())
cursor = conn.execute("INSERT INTO PRODUCTS (id,name,price) \
VALUES (?,?,?) ",(r));
conn.commit()
id = Label(top,text="ID")
id.pack()
en = Entry(top)
en.pack()
name = Label(top,text = "Product Name")
name.pack()
en1 = Entry(top)
en1.pack()
price = Label(top,text="Price")
price.pack()
en2 = Entry(top)
en2.pack()
bts = Button(top,text="Submit",command=data_submit)
bts.pack(pady=20)
def data_delete():
delt = d_en.get()
cursor=conn.execute(f"DELETE FROM PRODUCTS WHERE ID ={delt}")
conn.commit()
b= Button(root,text="Data",command=Data)
b.pack(pady=10)
v = IntVar()
scale = Scale(root,variable=v,from_=600,to = 2000,orient=HORIZONTAL)
scale.pack(anchor=CENTER)
btn = Button(root,text = "Price",command=price_check)
btn.pack(pady=10)
btn1 = Button(root,text="Data Entry",command=data_form)
btn1.pack(pady=10)
d_en = Entry(root)
d_en.pack(pady=10)
d_btn= Button(root,text="Delete",command=data_delete)
d_btn.pack(pady=10)
root.mainloop()
Comments
Post a Comment