No Result
View All Result
DevRescue
  • Home
  • Python
  • Lists
  • Movies
  • Finance
  • Opinion
  • About
  • Contact Us
  • Home
  • Python
  • Lists
  • Movies
  • Finance
  • Opinion
  • About
  • Contact Us
DevRescue
Home Blog Python

Python sqlite3 Select and Insert

by Khaleel O.
August 6, 2021
in Python
Reading Time: 3 mins read
A A
Python sqlite3 Select
Python sqlite3 Select

Now let’s look at a Python sqlite3 Select and Insert example. Recall that a SQL INSERT statement is used to insert rows into a table and a SQL SELECT query is used to return a set of rows from a table.

Let’s begin with some code:

import sqlite3
con = sqlite3.connect('data/sample.db')
cur = con.cursor()

# Create table
cur.execute('''CREATE TABLE IF NOT EXISTS Playlist
              (createdate text, 
               id integer, 
               artist text, 
               songTitle text, 
               albumTitle text, 
               duration text, 
               songprice real)''')

# Insert rows of data
cur.execute("INSERT INTO PlayList VALUES ('2022-01-31',1,'Kanye West','Fade','Life of Pablo','3:13',2.99)")
cur.execute("INSERT INTO PlayList VALUES ('2022-01-31',2,'Kanye West','Ultralight Beam','Life of Pablo','5:20',3.99)")
cur.execute("INSERT INTO PlayList VALUES ('2022-01-31',3,'Kanye West','Famous','Life of Pablo','3:16',1.99)")


# Save (commit) the changes
con.commit()

#select rows
for row in cur.execute('SELECT * FROM PlayList'):
    print(row)

con.close()

Let’s explain what is going on here:

  1. We import the sqlite3 library, connect to our SQLite Database sample.db and define the cursor cur. The cursor is what we will be using to apply our SQL Commands to our SQLite Database.
  2. cur.execute() method accepts our SQL Statement. In this case our SQL Statement creates the table Playlist if it doesn’t already exist. It has 7 columns.
  3. The 2nd, 3rd and 4th cur.execute() statements is what we will use to INSERT rows into our database. We are inserting 3 rows into our database.
  4. con.commit() method commits the changes pending in the current insert transaction. The transactions are our INSERT statements. If we don’t commit, we will lose all changes if we close the database connection. Please remember this.
  5. The 5th cur.execute() is what we will use to SELECT the data stored in our table. Remember we must commit before inserted rows are actually saved to our table. A simple FOR-loop is enough to return the rows from our table.

When we execute the above code block we will get the following output:

('2022-01-31', 1, 'Kanye West', 'Fade', 'Life of Pablo', '3:13', 2.99)
('2022-01-31', 2, 'Kanye West', 'Ultralight Beam', 'Life of Pablo', '5:20', 3.99)
('2022-01-31', 3, 'Kanye West', 'Famous', 'Life of Pablo', '3:16', 1.99)

We can execute other SELECT statements with WHERE conditions that will work exactly as we expect:

#select rows
for row in cur.execute('SELECT * FROM PlayList WHERE songprice > 3'):
    print(row)

#Output
#('2022-01-31', 2, 'Kanye West', 'Ultralight Beam', 'Life of Pablo', '5:20', 3.99)
    
#select rows
for row in cur.execute("SELECT * FROM PlayList WHERE songTitle LIKE '%Fa%'"):
    print(row)

#Output
#('2022-01-31', 1, 'Kanye West', 'Fade', 'Life of Pablo', '3:13', 2.99)
#('2022-01-31', 3, 'Kanye West', 'Famous', 'Life of Pablo', '3:16', 1.99)

Thanks for reading. Find the full code HERE, go back to the first part of this tutorial HERE and HERE to find out about deleting rows in SQLite. Cheers! 👌👌👌

Tags: databasesqlsqlite
Previous Post

Python sqlite3 Create Tables

Next Post

Python sqlite3 Delete Row

Khaleel O.

Khaleel O.

I love to share, educate and help developers. I have 14+ years experience in IT. Currently transitioning from Systems Administration to DevOps. Avid reader, intellectual and dreamer. Enter Freely, Go safely, And leave something of the happiness you bring.

Related Posts

Python

Python Fibonacci Recursive Solution

by Khaleel O.
January 16, 2024
0
0

Let's do a Python Fibonacci Recursive Solution. Let's go! 🔥🔥🔥 The Fibonacci sequence is a series of numbers in which...

Read moreDetails
Python

Python Slice String List Tuple

by Khaleel O.
January 16, 2024
0
0

Let's do a Python Slice string list tuple how-to tutorial. Let's go! 🔥🔥🔥 In Python, a slice is a feature...

Read moreDetails
Python

Python Blowfish Encryption Example

by Khaleel O.
January 14, 2024
0
0

Let's do a Python Blowfish Encryption example. Let's go! 🔥 🔥 Blowfish is a symmetric-key block cipher algorithm designed for...

Read moreDetails
Python

Python Deque Methods

by Khaleel O.
January 14, 2024
0
0

In this post we'll list Python Deque Methods. Ready? Let's go! 🔥🔥🔥 A deque (double-ended queue) in Python is a...

Read moreDetails

DevRescue © 2021 All Rights Reserved. Privacy Policy. Cookie Policy

Manage your privacy

To provide the best experiences, we and our partners use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us and our partners to process personal data such as browsing behavior or unique IDs on this site and show (non-) personalized ads. Not consenting or withdrawing consent, may adversely affect certain features and functions.

Click below to consent to the above or make granular choices. Your choices will be applied to this site only. You can change your settings at any time, including withdrawing your consent, by using the toggles on the Cookie Policy, or by clicking on the manage consent button at the bottom of the screen.

Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Statistics

Marketing

Features
Always active

Always active
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
Manage options
  • {title}
  • {title}
  • {title}
Manage your privacy
To provide the best experiences, DevRescue.com will use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Statistics

Marketing

Features
Always active

Always active
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
Manage options
  • {title}
  • {title}
  • {title}
No Result
View All Result
  • Home
  • Python
  • Lists
  • Movies
  • Finance
  • Opinion
  • About
  • Contact Us

DevRescue © 2022 All Rights Reserved Privacy Policy