Python Forum
Database Submit Entry Syntax Error
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Database Submit Entry Syntax Error
#27
(Jan-22-2020, 09:28 PM)Denni Wrote: Actually @buran your response shows that you are the one that is clueless passing a parameterized list (aka sting) inserting variables (that could be strings) is exactly the same as concatenating a string within a string and thus creates the same issue
import sqlite3

conn = sqlite3.connect('test.db')
c = conn.cursor()

# Create table
c.executescript('''DROP TABLE IF EXISTS bank; CREATE TABLE IF NOT EXISTS bank (name TEXT, amount INTEGER)''')

# Insert a row of data
c.execute("INSERT INTO bank VALUES (?, ?)" , ('JOHN DOE', 1000))
c.execute("INSERT INTO bank VALUES (?, ?)" , ('JANE DOE', '2000'))
c.execute("INSERT INTO bank VALUES (?, ?)" , ('Denni', '3000'))
# Save (commit) the changes
conn.commit()

user_input = '3' # normal user input, string
sql_injection = '3 or 1=1' # sql injection

print('Using parametrized statement')
print('\nnormal user input')
c.execute("SELECT * FROM bank WHERE ROWID = ?", (user_input,))
for row in c:
    print(row)

print('\nsql injection')
c.execute("SELECT * FROM bank WHERE ROWID = ?", (sql_injection,))
for row in c:
    print(row)

print('\n====================\nUsing concatenated statement')
print('\nnormal user input')
s = 'SELECT * FROM bank WHERE ROWID = ' + user_input
c.execute(s)
for row in c:
    print(row)

print('\nsql injection')
s = 'SELECT * FROM bank WHERE ROWID = ' + sql_injection
c.execute(s)
for row in c:
    print(row)

conn.close()
Output:
Using parametrized statement normal user input ('Denni', 3000) sql injection ==================== Using concatenated statement normal user input ('Denni', 3000) sql injection ('JOHN DOE', 1000) ('JANE DOE', 2000) ('Denni', 3000)
Do you still think it's the same?
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply


Messages In This Thread
Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 03:02 AM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 05:10 AM
RE: Database Submit Entry Syntax Error - by Denni - Jan-22-2020, 03:11 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 03:12 PM
RE: Database Submit Entry Syntax Error - by Denni - Jan-22-2020, 03:19 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 03:20 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 03:23 PM
RE: Database Submit Entry Syntax Error - by Denni - Jan-22-2020, 03:35 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 03:40 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 03:47 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 04:04 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 04:08 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 04:13 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 05:04 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 05:08 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 05:28 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 05:41 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 05:41 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 05:50 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 05:55 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 07:21 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 07:29 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 07:40 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-22-2020, 07:41 PM
RE: Database Submit Entry Syntax Error - by Melford - Jan-22-2020, 07:49 PM
RE: Database Submit Entry Syntax Error - by Denni - Jan-22-2020, 09:28 PM
RE: Database Submit Entry Syntax Error - by buran - Jan-23-2020, 04:15 AM
RE: Database Submit Entry Syntax Error - by Denni - Jan-27-2020, 04:20 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  [Tkinter] Error verify data in database TomasSanchexx 2 1,054 Aug-11-2023, 12:37 PM
Last Post: TomasSanchexx
  [PyGUI] Invalid command error with Entry object eliqm 8 2,590 May-18-2023, 10:14 PM
Last Post: eliqm
  [Tkinter] Trying to add data into a shelf from a submit button TWB 8 2,099 Jan-06-2023, 11:30 PM
Last Post: TWB
  Usborne Coding for Beginners using Python 'Dodge the Bombs' Syntax Error CMSheWolfe 5 4,117 Jun-18-2020, 09:41 PM
Last Post: deanhystad
  Transfer Toplevel window entry to root window entry with TKinter HBH 0 4,596 Jan-23-2020, 09:00 PM
Last Post: HBH
  Problem with Submit button Tkinter Reldaing 2 3,799 Jan-05-2020, 01:58 AM
Last Post: balenaucigasa
  [Tkinter] how to get the entry information using Entry.get() ? SamyPyth 2 3,613 Mar-18-2019, 05:36 PM
Last Post: woooee

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020