Aller au contenu

Récupération de données avec Pandas

Je vous propose de manipuler les bases de données avec le packages SQLite3. Il est natif dans Python et il est facile à utiliser.

Créer une table

#!/usr/bin/python

import sqlite3

conn = sqlite3.connect('datase.db')
print("Opened database successfully")

conn.execute('''CREATE TABLE COMPANY
         (id INT PRIMARY KEY     NOT NULL,
         name           TEXT    NOT NULL,
         age            INT     NOT NULL,
         address        CHAR(50),
         salary         REAL);''')
print("Table created successfully")

conn.close()

Voici les quatre principales opérations sur les tables d'une base de données (C.R.U.D).

  1. Create
  2. Read
  3. Update
  4. Delete

1. Insérer des données

#!/usr/bin/python

import sqlite3

conn = sqlite3.connect('datase.db')
print("Opened database successfully")

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (1, 'Paul', 32, 'California', 20000.00 )");

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (2, 'Allen', 25, 'Texas', 15000.00 )");

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (3, 'Teddy', 23, 'Norway', 20000.00 )");

conn.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
      VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 )");

conn.commit()
print("Records created successfully")
conn.close()

2. Lire les données

#!/usr/bin/python

import sqlite3

conn = sqlite3.connect('datase.db')
print("Opened database successfully")

cursor = conn.execute("SELECT id, name, address, salary from COMPANY")
for row in cursor:
   print("ID = ", row[0])
   print("NAME = ", row[1])
   print("ADDRESS = ", row[2])
   print("SALARY = ", row[3], "\n")

print ("Operation done successfully")
conn.close()

3. Mettre à jour les données

#!/usr/bin/python

import sqlite3

conn = sqlite3.connect('datase.db')
print("Opened database successfully");

conn.execute("UPDATE COMPANY set SALARY = 25000.00 where ID = 1")
conn.commit()
print("Total number of rows updated :", conn.total_changes)

cursor = conn.execute("SELECT id, name, address, salary from COMPANY")
for row in cursor:
   print("ID = ", row[0])
   print("NAME = ", row[1])
   print("ADDRESS = ", row[2])
   print("SALARY = ", row[3], "\n")

print("Operation done successfully")
conn.close()

4. Supprimer des données

#!/usr/bin/python

import sqlite3

conn = sqlite3.connect('datase.db')
print("Opened database successfully")

conn.execute("DELETE from COMPANY where ID = 2;")
conn.commit()
print("Total number of rows deleted :", conn.total_changes)

cursor = conn.execute("SELECT id, name, address, salary from COMPANY")
for row in cursor:
   print("ID = ", row[0])
   print("NAME = ", row[1])
   print("ADDRESS = ", row[2])
   print("SALARY = ", row[3], "\n")

print("Operation done successfully")
conn.close()

Si vous souhiatez aller plus loin, rendez-vous sur la documentation de SQLite ici.