Skip to content

Instantly share code, notes, and snippets.

@dbh4ck
Created April 2, 2016 15:05
Show Gist options
  • Select an option

  • Save dbh4ck/3d89e146db095af1d1b2e25d7bc12159 to your computer and use it in GitHub Desktop.

Select an option

Save dbh4ck/3d89e146db095af1d1b2e25d7bc12159 to your computer and use it in GitHub Desktop.
wxPython Sqlite3 Insert Update Delete
#---------------------------------------------------------------------
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# -*- SQLITE3 GUI DEMO APP -*-
# -*- Python (2.7.11) -*-
# -*- wxPython (2.8) -*-
# -*- Author : DB <[email protected]> aka <db~@NC> -*-
# -*- GUI wxPython -*-
# -*- coded by db~@NC -*-
# -*- Mar., 2016 -*-
#---------------------------------------------------------------------
import os
import sys
import traceback
import types
import getpass
import locale
import warnings
import time
import logging
import random
import urllib
import threading,thread
from decimal import Decimal
import wx
if "2.8" in wx.version():
import wx.lib.pubsub.setupkwargs
else:
from wx.lib.pubsub import setuparg1
import wx.lib.agw.hyperlink as hl
import wx, wx.html
class MainWindow(wx.Frame):
def __init__(SELF,parent,id,title):
wx.Frame.__init__(SELF, None,-1,"wxPython GUI Sqlite3 Coded by db~@NC",size=(802,500),style=wx.DEFAULT_FRAME_STYLE ^ wx.RESIZE_BORDER ^ wx.MAXIMIZE_BOX)
SELF.SetBackgroundColour((0xcc,0xff,0xcc))
SELF.initialize()
def initialize(SELF):
panelsarj = wx.Panel(SELF,-1,pos =(0,2),size=(900,42))
panelsarj.SetBackgroundColour((0xff,0xcc,0xcc))
font_lbl= wx.Font(10, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
sarjfont_lbl= wx.Font(15, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
sarj_sizer = wx.BoxSizer(wx.HORIZONTAL)
sarj_lbl = wx.StaticText(panelsarj,label= "wxPython GUI Sqlite3 DEMO Coded by db~@NC")
sarj_lbl.SetForegroundColour(wx.BLUE)
sarj_lbl.SetFont(sarjfont_lbl)
sarj_sizer.Add(sarj_lbl,0,wx.CENTER|wx.TOP,10)
panel1 = wx.Panel(SELF,-1,pos =(8,60),size=(235,130))
panel2 = wx.Panel(SELF,-1,pos =(8,200),size=(235,235))
panel3 = wx.Panel(SELF,-1,pos =(270,60),size=(245,250))
panel4 = wx.Panel(SELF,-1,pos =(270,340),size=(245,95))
panel5 = wx.Panel(SELF,-1,pos =(555,60),size=(230,125))
panel6 = wx.Panel(SELF,-1,pos =(555,210),size=(230,230))
panel1.SetBackgroundColour((0xcc,0xcc,0xff))
panel2.SetBackgroundColour((0xcc,0xcc,0xff))
panel3.SetBackgroundColour((0xcc,0xcc,0xff))
panel4.SetBackgroundColour((0xcc,0xcc,0xff))
panel5.SetBackgroundColour((0xcc,0xcc,0xff))
panel6.SetBackgroundColour((0xcc,0xcc,0xff))
SELF.dblbl = wx.StaticBox(SELF, -1, 'Create DataBase:' , pos =(5,50),size=(240,140))
font_dblbl= wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl.SetForegroundColour(wx.BLUE)
SELF.dblbl.SetFont(font_dblbl)
SELF.dblbl2 = wx.StaticBox(SELF, -1, 'Create Table:' , pos =(5,200),size=(240,240))
font_dblbl2= wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl2.SetForegroundColour(wx.BLUE)
SELF.dblbl2.SetFont(font_dblbl2)
SELF.dblbl3 = wx.StaticBox(SELF, -1, 'INSERT Data:' , pos =(270,50),size=(252,270))
font_dblbl3 = wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl3.SetForegroundColour(wx.BLUE)
SELF.dblbl3.SetFont(font_dblbl3)
SELF.dblbl4 = wx.StaticBox(SELF, -1, 'Show Data:' , pos =(270,340),size=(252,100))
font_dblbl4= wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl4.SetForegroundColour(wx.BLUE)
SELF.dblbl4.SetFont(font_dblbl4)
SELF.dblbl5 = wx.StaticBox(SELF, -1, 'Delete Data:' , pos =(550,50),size=(240,140))
font_dblbl5 = wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl5.SetForegroundColour(wx.BLUE)
SELF.dblbl5.SetFont(font_dblbl5)
SELF.dblbl6 = wx.StaticBox(SELF, -1, 'Update Data:' , pos =(550,200),size=(240,240))
font_dblbl6 = wx.Font(11, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.dblbl6.SetForegroundColour(wx.BLUE)
SELF.dblbl6.SetFont(font_dblbl5)
SELF.dblbl_sizer = wx.StaticBoxSizer(SELF.dblbl, wx.VERTICAL)
SELF.dblbl2_sizer = wx.StaticBoxSizer(SELF.dblbl2, wx.VERTICAL)
SELF.dblbl3_sizer = wx.StaticBoxSizer(SELF.dblbl3, wx.VERTICAL)
SELF.dblbl4_sizer = wx.StaticBoxSizer(SELF.dblbl4, wx.VERTICAL)
SELF.dblbl5_sizer = wx.StaticBoxSizer(SELF.dblbl5, wx.VERTICAL)
db_sizer = wx.BoxSizer(wx.HORIZONTAL)
db_lbl = wx.StaticText(panel1,label= "Database Name:")
db_lbl.SetForegroundColour(wx.BLUE)
db_lbl.SetFont(font_lbl)
db_sizer.Add(db_lbl,0,wx.LEFT|wx.TOP,5)
SELF.dblbl_sizer.Add(db_lbl,0,wx.ALL|wx.CENTER,5)
SELF.db = wx.TextCtrl(panel1,style=wx.TE_CENTER)
SELF.db.SetForegroundColour(wx.BLUE)
db_sizer.Add(SELF.db,0,wx.ALL,5)
SELF.dblbl_sizer.Add(SELF.db,0,wx.ALL|wx.CENTER,5)
font_1= wx.Font(11, wx.DECORATIVE, wx.NORMAL, wx.BOLD)
SELF.db.SetFont(font_1)
button_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button = wx.Button(panel1,-1,label="Create DB")
SELF.Bind(wx.EVT_BUTTON,SELF.OnDbCreateButtonClick,SELF.button)
font_button= wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button.SetFont(font_button)
SELF.button.SetForegroundColour(wx.RED)
button_sizer.Add(SELF.button,0,wx.LEFT,112)
SELF.dblbl_sizer.Add(SELF.button,0,wx.ALL|wx.CENTER,5)
tb_sizer = wx.BoxSizer(wx.HORIZONTAL)
tb_lbl = wx.StaticText(panel2,label="Table Name:")
tb_lbl.SetForegroundColour(wx.BLUE)
tb_lbl.SetFont(font_lbl)
tb_sizer.Add(tb_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(tb_lbl,0,wx.ALL|wx.CENTER,5)
SELF.tb = wx.TextCtrl(panel2,style=wx.TE_CENTER)
SELF.tb.SetForegroundColour(wx.BLUE)
tb_sizer.Add(SELF.tb,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.tb,0,wx.ALL|wx.CENTER,5)
SELF.tb.SetFont(font_1)
col1_sizer = wx.BoxSizer(wx.HORIZONTAL)
col1_lbl = wx.StaticText(panel2,label="1st Column:")
col1_lbl.SetForegroundColour(wx.BLUE)
col1_lbl.SetFont(font_lbl)
col1_sizer.Add(col1_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(col1_lbl,0,wx.ALL|wx.CENTER,5)
SELF.col1 = wx.TextCtrl(panel2,style=wx.TE_CENTER)
SELF.col1.SetForegroundColour(wx.BLUE)
col1_sizer.Add(SELF.col1,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.col1,0,wx.ALL|wx.CENTER,5)
SELF.col1.SetFont(font_1)
col2_sizer = wx.BoxSizer(wx.HORIZONTAL)
col2_lbl = wx.StaticText(panel2,label="2nd Column:")
col2_lbl.SetForegroundColour(wx.BLUE)
col2_lbl.SetFont(font_lbl)
col2_sizer.Add(col2_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(col2_lbl,0,wx.ALL|wx.CENTER,5)
SELF.col2 = wx.TextCtrl(panel2,style=wx.TE_CENTER)
SELF.col2.SetForegroundColour(wx.BLUE)
col2_sizer.Add(SELF.col2,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.col2,0,wx.ALL|wx.CENTER,5)
SELF.col2.SetFont(font_1)
col3_sizer = wx.BoxSizer(wx.HORIZONTAL)
col3_lbl = wx.StaticText(panel2,label="3rd Column:")
col3_lbl.SetForegroundColour(wx.BLUE)
col3_lbl.SetFont(font_lbl)
col3_sizer.Add(col3_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(col3_lbl,0,wx.ALL|wx.CENTER,5)
SELF.col3 = wx.TextCtrl(panel2,style=wx.TE_CENTER)
SELF.col3.SetForegroundColour(wx.BLUE)
col3_sizer.Add(SELF.col3,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.col3,0,wx.ALL|wx.CENTER,5)
SELF.col3.SetFont(font_1)
button2_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button2 = wx.Button(panel2,-1,label="Create TB")
SELF.Bind(wx.EVT_BUTTON,SELF.OnTableCreateButtonClick,SELF.button2)
font_button2 = wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button2.SetFont(font_button)
SELF.button2.SetForegroundColour(wx.RED)
button2_sizer.Add(SELF.button2,0,wx.LEFT,112)
SELF.dblbl_sizer.Add(SELF.button2,0,wx.ALL|wx.CENTER,5)
insert1_sizer = wx.BoxSizer(wx.HORIZONTAL)
insert1_lbl = wx.StaticText(panel3,label="Insert Col. 1:")
insert1_lbl.SetForegroundColour(wx.BLUE)
insert1_lbl.SetFont(font_lbl)
insert1_sizer.Add(insert1_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl3_sizer.Add(insert1_lbl,0,wx.ALL|wx.CENTER,5)
SELF.insert1 = wx.TextCtrl(panel3,style=wx.TE_CENTER)
SELF.insert1.SetForegroundColour(wx.BLUE)
insert1_sizer.Add(SELF.insert1,0,wx.ALL,15)
SELF.dblbl3_sizer.Add(SELF.insert1,0,wx.ALL|wx.CENTER,5)
SELF.insert1.SetFont(font_1)
note1_sizer = wx.BoxSizer(wx.HORIZONTAL)
note1_lbl = wx.StaticText(panel3, label= "[ Must be Integer ]")
note1_lbl.SetForegroundColour(wx.BLUE)
note1_lbl.SetFont(font_lbl)
note1_sizer.Add(note1_lbl,0,wx.TOP|wx.RIGHT,-177)
SELF.dblbl3_sizer.Add(note1_lbl,0,wx.ALL|wx.CENTER,5)
insert2_sizer = wx.BoxSizer(wx.HORIZONTAL)
insert2_lbl = wx.StaticText(panel3,label="Insert Col. 2:")
insert2_lbl.SetForegroundColour(wx.BLUE)
insert2_lbl.SetFont(font_lbl)
insert2_sizer.Add(insert2_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl3_sizer.Add(insert2_lbl,0,wx.ALL|wx.CENTER,5)
SELF.insert2 = wx.TextCtrl(panel3,style=wx.TE_CENTER)
SELF.insert2.SetForegroundColour(wx.BLUE)
insert2_sizer.Add(SELF.insert2,0,wx.ALL,15)
SELF.dblbl3_sizer.Add(SELF.insert2,0,wx.ALL|wx.CENTER,5)
SELF.insert2.SetFont(font_1)
note2_sizer = wx.BoxSizer(wx.HORIZONTAL)
note2_lbl = wx.StaticText(panel3, label= "[ Must be Text ]")
note2_lbl.SetForegroundColour(wx.BLUE)
note2_lbl.SetFont(font_lbl)
note2_sizer.Add(note2_lbl,0,wx.TOP|wx.RIGHT,-128)
SELF.dblbl3_sizer.Add(note2_lbl,0,wx.ALL|wx.CENTER,5)
insert3_sizer = wx.BoxSizer(wx.HORIZONTAL)
insert3_lbl = wx.StaticText(panel3,label="Insert Col. 3:")
insert3_lbl.SetForegroundColour(wx.BLUE)
insert3_lbl.SetFont(font_lbl)
insert3_sizer.Add(insert3_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl3_sizer.Add(insert3_lbl,0,wx.ALL|wx.CENTER,5)
SELF.insert3 = wx.TextCtrl(panel3,style=wx.TE_CENTER)
SELF.insert3.SetForegroundColour(wx.BLUE)
insert3_sizer.Add(SELF.insert3,0,wx.ALL,15)
SELF.dblbl3_sizer.Add(SELF.insert3,0,wx.ALL|wx.CENTER,5)
SELF.insert3.SetFont(font_1)
note3_sizer = wx.BoxSizer(wx.HORIZONTAL)
note3_lbl = wx.StaticText(panel3, label= "[ Must be Text ]")
note3_lbl.SetForegroundColour(wx.BLUE)
note3_lbl.SetFont(font_lbl)
note3_sizer.Add(note3_lbl,0,wx.TOP|wx.RIGHT,-78)
SELF.dblbl3_sizer.Add(note3_lbl,0,wx.ALL|wx.CENTER,5)
button0_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button0 = wx.Button(panel3,-1,label="INSERT Data")
SELF.Bind(wx.EVT_BUTTON,SELF.OnInsertButtonClick,SELF.button0)
font_button0 = wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button0.SetFont(font_button)
SELF.button0.SetForegroundColour(wx.RED)
button0_sizer.Add(SELF.button0,0,wx.LEFT,112)
SELF.dblbl3_sizer.Add(SELF.button0,0,wx.ALL|wx.CENTER,5)
button3_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button3 = wx.Button(panel4,-1,label="Show Table Data")
SELF.Bind(wx.EVT_BUTTON,SELF.OnShowButtonClick,SELF.button3)
font_button3 = wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button3.SetFont(font_button)
SELF.button3.SetForegroundColour(wx.RED)
button3_sizer.Add(SELF.button3,0,wx.LEFT,50)
del_sizer = wx.BoxSizer(wx.HORIZONTAL)
del_lbl = wx.StaticText(panel5,label= "Enter Column Id:")
del_lbl.SetForegroundColour(wx.BLUE)
del_lbl.SetFont(font_lbl)
del_sizer.Add(del_lbl,0,wx.LEFT|wx.TOP,5)
SELF.dblbl_sizer.Add(del_lbl,0,wx.ALL|wx.CENTER,5)
SELF.delete = wx.TextCtrl(panel5,style=wx.TE_CENTER)
SELF.delete.SetForegroundColour(wx.BLUE)
del_sizer.Add(SELF.delete,0,wx.ALL,3)
SELF.dblbl3_sizer.Add(SELF.delete,0,wx.ALL|wx.CENTER,5)
SELF.delete.SetFont(font_1)
button4_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button4 = wx.Button(panel5,-1,label="Delete Data")
SELF.Bind(wx.EVT_BUTTON,SELF.OnDeleteButtonClick,SELF.button4)
font_button3 = wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button4.SetFont(font_button)
SELF.button4.SetForegroundColour(wx.RED)
button4_sizer.Add(SELF.button4,0,wx.LEFT,50)
column_sizer = wx.BoxSizer(wx.HORIZONTAL)
column_lbl = wx.StaticText(panel6,label="Column ID:")
column_lbl.SetForegroundColour(wx.BLUE)
column_lbl.SetFont(font_lbl)
column_sizer.Add(column_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(column_lbl,0,wx.ALL|wx.CENTER,5)
SELF.column = wx.TextCtrl(panel6,style=wx.TE_CENTER)
SELF.column.SetForegroundColour(wx.BLUE)
column_sizer.Add(SELF.column,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.column,0,wx.ALL|wx.CENTER,5)
SELF.column.SetFont(font_1)
col11_sizer = wx.BoxSizer(wx.HORIZONTAL)
col11_lbl = wx.StaticText(panel6,label="1st Column:")
col11_lbl.SetForegroundColour(wx.BLUE)
col11_lbl.SetFont(font_lbl)
col11_sizer.Add(col11_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(col11_lbl,0,wx.ALL|wx.CENTER,5)
SELF.col11 = wx.TextCtrl(panel6,style=wx.TE_CENTER)
SELF.col1.SetForegroundColour(wx.BLUE)
col11_sizer.Add(SELF.col11,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.col11,0,wx.ALL|wx.CENTER,5)
SELF.col11.SetFont(font_1)
col22_sizer = wx.BoxSizer(wx.HORIZONTAL)
col22_lbl = wx.StaticText(panel6,label="2nd Column:")
col22_lbl.SetForegroundColour(wx.BLUE)
col22_lbl.SetFont(font_lbl)
col22_sizer.Add(col22_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(col22_lbl,0,wx.ALL|wx.CENTER,5)
SELF.col22 = wx.TextCtrl(panel6,style=wx.TE_CENTER)
SELF.col22.SetForegroundColour(wx.BLUE)
col22_sizer.Add(SELF.col22,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.col22,0,wx.ALL|wx.CENTER,5)
SELF.col22.SetFont(font_1)
col33_sizer = wx.BoxSizer(wx.HORIZONTAL)
col33_lbl = wx.StaticText(panel6,label="3rd Column:")
col33_lbl.SetForegroundColour(wx.BLUE)
col33_lbl.SetFont(font_lbl)
col33_sizer.Add(col33_lbl,0,wx.LEFT|wx.TOP,20)
SELF.dblbl2_sizer.Add(col33_lbl,0,wx.ALL|wx.CENTER,5)
SELF.col33 = wx.TextCtrl(panel6,style=wx.TE_CENTER)
SELF.col33.SetForegroundColour(wx.BLUE)
col33_sizer.Add(SELF.col33,0,wx.ALL,15)
SELF.dblbl2_sizer.Add(SELF.col33,0,wx.ALL|wx.CENTER,5)
SELF.col33.SetFont(font_1)
button5_sizer = wx.BoxSizer(wx.HORIZONTAL)
SELF.button5 = wx.Button(panel6,-1,label="Update Data")
SELF.Bind(wx.EVT_BUTTON,SELF.OnUpdateButtonClick,SELF.button5)
font_button5 = wx.Font(12, wx.DECORATIVE, wx.ITALIC, wx.BOLD)
SELF.button5.SetFont(font_button)
SELF.button5.SetForegroundColour(wx.RED)
button5_sizer.Add(SELF.button5,0,wx.LEFT,50)
main_sizer= wx.BoxSizer(wx.VERTICAL)
main_sizer.Add(sarj_sizer,0,wx.TOP|wx.CENTER,3)
main_sizer.Add(db_sizer,0,wx.TOP,5)
main_sizer.Add(button_sizer,0,wx.TOP,2)
main_sizer.Add(tb_sizer,0,wx.TOP,-80)
main_sizer.Add(col1_sizer,0,wx.TOP,-40)
main_sizer.Add(col2_sizer,0,wx.TOP,-20)
main_sizer.Add(col3_sizer,0,wx.TOP,-18)
main_sizer.Add(button2_sizer,0,wx.TOP,2)
main_sizer.Add(insert1_sizer,0,wx.TOP,-210)
main_sizer.Add(note1_sizer,0,wx.LEFT|wx.TOP,10)
main_sizer.Add(insert2_sizer,0,wx.TOP,-160)
main_sizer.Add(note2_sizer,0,wx.LEFT|wx.TOP,10)
main_sizer.Add(insert3_sizer,0,wx.TOP,-110)
main_sizer.Add(note3_sizer,0,wx.LEFT|wx.TOP,10)
main_sizer.Add(button0_sizer,0,wx.TOP,-40)
main_sizer.Add(button3_sizer,0,wx.TOP,-210)
main_sizer.Add(del_sizer,0,wx.TOP,-240)
main_sizer.Add(button4_sizer,0,wx.TOP,-185)
main_sizer.Add(column_sizer,0,wx.TOP,-255)
main_sizer.Add(col11_sizer,0,wx.TOP,-215)
main_sizer.Add(col22_sizer,0,wx.TOP,-185)
main_sizer.Add(col33_sizer,0,wx.TOP,-150)
main_sizer.Add(button5_sizer,0,wx.TOP,-100)
SELF.SetSizer(main_sizer)
SELF.Show(True)
SELF.Center()
def OnDbCreateButtonClick(SELF,event):
import sqlite3 as lite
import sys
conn = lite.connect((SELF.db.GetValue() + ".lite"))
print "\nDataBase Created!\n"
def OnTableCreateButtonClick(SELF,event):
import sqlite3 as lite
import sys
conn = lite.connect((SELF.db.GetValue()))
with conn:
cur = conn.cursor()
cur.execute("CREATE TABLE %s (Id INT PRIMARY KEY, %s TEXT, %s TEXT)"%(SELF.tb.GetValue(), SELF.col2.GetValue(), SELF.col3.GetValue()))
print "Table Created!\n"
def OnShowButtonClick(SELF,event):
import sqlite3 as lite
import sys
conn = lite.connect((SELF.db.GetValue()))
with conn:
cur = conn.cursor()
cur.execute("SELECT * FROM %s"%(SELF.tb.GetValue()))
rows = cur.fetchall()
for row in rows:
#print row
print "\nId = ", row[0]
print "%s = "%(SELF.col2.GetValue()), row[1]
print "%s = "%(SELF.col3.GetValue()), row[2]
def OnInsertButtonClick(SELF,event):
import sqlite3 as lite
import sys
conn = lite.connect((SELF.db.GetValue()))
with conn:
cur = conn.cursor()
cur.execute("INSERT INTO %s VALUES(%s, '%s', '%s')" %(SELF.tb.GetValue(), SELF.insert1.GetValue(), SELF.insert2.GetValue(), SELF.insert3.GetValue()))
print "Data Inserted!"
def OnDeleteButtonClick(SELF,event):
import sqlite3 as lite
import sys
conn = lite.connect((SELF.db.GetValue()))
with conn:
cur = conn.cursor()
cur.execute("DELETE FROM %s WHERE ID=%s" %(SELF.tb.GetValue(), SELF.delete.GetValue()))
print "\nData Deleted!\n"
def OnUpdateButtonClick(SELF,event):
import sqlite3 as lite
import sys
conn = lite.connect((SELF.db.GetValue()))
with conn:
cur = conn.cursor()
cur.execute("SELECT * FROM %s where Id = %s" %(SELF.tb.GetValue(), SELF.column.GetValue()))
user = cur.fetchone()[0]
cur.execute("UPDATE %s SET %s = '%s' where Id = %s" %(SELF.tb.GetValue(), SELF.col2.GetValue(), SELF.col22.GetValue(), SELF.column.GetValue()))
cur.execute("UPDATE %s SET %s = '%s' where Id = %s" %(SELF.tb.GetValue(), SELF.col3.GetValue(), SELF.col33.GetValue(), SELF.column.GetValue()))
print "\nData Updated!\n"
if __name__ == "__main__":
app = wx.App(False)
frame = MainWindow(None,wx.ID_ANY,'wxPython Insert Update Delete GUI Sqlite Coded by db~@NC')
app.MainLoop()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment