Open In App

Python SQLite - Deleting Data in Table

Last Updated : 01 Jul, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

Deleting data in SQLite is achieved using the DELETE statement, which can optionally be combined with a WHERE clause to specify which rows to delete.

Syntax

DELETE FROM table_name [WHERE Clause]

  • table_name: The name of the table from which you want to delete data.
  • WHERE condition: This is optional. It specifies the condition for which rows to delete. If omitted, all rows will be deleted from the table.

First, we need to create a database and table to demonstrate DELETE clause, here's how we can do it:

Python
import sqlite3

# Connecting to sqlite (creates 'geek.db' if it doesn't exist)
connection_obj = sqlite3.connect('geek.db')

# Create a cursor object
cursor_obj = connection_obj.cursor()

# Drop the table if it already exists (to start fresh)
cursor_obj.execute("DROP TABLE IF EXISTS GEEK")

# Create the GEEK table
table = """
CREATE TABLE GEEK (
    Email VARCHAR(255) NOT NULL,
    Name CHAR(25) NOT NULL,
    Score INT
);
"""
cursor_obj.execute(table)

# Insert some data into the GEEK table
data = [
    ("geekk1@gmail.com", "Geek1", 25),
    ("geekk2@gmail.com", "Geek2", 15),
    ("geekk3@gmail.com", "Geek3", 36),
    ("geekk4@gmail.com", "Geek4", 27),
    ("geekk5@gmail.com", "Geek5", 40),
    ("geekk6@gmail.com", "Geek6", 14),
    ("geekk7@gmail.com", "Geek7", 10)
]

cursor_obj.executemany("INSERT INTO GEEK (Email, Name, Score) VALUES (?, ?, ?)", data)

# Commit changes to the database
connection_obj.commit()

# Close the connection
connection_obj.close()

Output:

Deleting Data from the Table

Now let's look at how to delete data from the GEEK table. We'll cover two examples: deleting specific rows based on a condition and deleting all rows.

Example 1: Delete Rows with Condition

In this example, we'll delete rows where the Score is less than 15.

Python
import sqlite3

# Connecting to sqlite
connection_obj = sqlite3.connect('geek.db')

# cursor object
cursor_obj = connection_obj.cursor()

#delete data
cursor_obj.execute("DELETE FROM GEEK WHERE Score < 15")

connection_obj.commit()

# Close the connection
connection_obj.close()

Output:

Example 2: Delete All Rows

In this example, we'll delete all the rows from the GEEK table.

Python
import sqlite3

# Connecting to sqlite
connection_obj = sqlite3.connect('geek.db')

# Create a cursor object
cursor_obj = connection_obj.cursor()

# Display all data before deletion
cursor_obj.execute("SELECT * FROM GEEK")
print("Data before deletion:")
print(cursor_obj.fetchall())

# Delete all rows from the table
cursor_obj.execute("DELETE FROM GEEK")

# Commit changes to the database
connection_obj.commit()

# Display all data after deletion
cursor_obj.execute("SELECT * FROM GEEK")
print("\nData after deletion:")
print(cursor_obj.fetchall())

# Close the connection
connection_obj.close()

Output:


Next Article
Article Tags :
Practice Tags :

Similar Reads