Forum Python

Please or S’enregistrer to create posts and topics.

Problème de création table SQLite Python

Bonjour,
J'utilise le code suivant pour créer une table SQLite, mais cela me renvoie un message d'erreur!
Voici le code:

# Connexion à la base de données (ou création de la base de données si elle n'existe pas)
conn = sqlite3.connect('database.db')

# Création d'un curseur pour exécuter les requêtes SQL
cursor = conn.cursor()

# Création de la table students avec AUTOINCREMENT pour id
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    email TEXT NOT NULL UNIQUE,
    section TEXT NOT NULL
)
''')

 

Merci pour l'aide

Salut mouba,

Afin de pouvoir utiliser le module SQLite, il faut au préalable l'importer! Voici le code correcte:

import sqlite3

# Connexion à la base de données (ou création de la base de données si elle n'existe pas)
conn = sqlite3.connect('database.db')

# Création d'un curseur pour exécuter les requêtes SQL
cursor = conn.cursor()

# Création de la table students avec AUTOINCREMENT pour id
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    email TEXT NOT NULL UNIQUE,
    section TEXT NOT NULL
)
''')

# Insertion de 5 lignes de données dans la table students
cursor.execute('''
INSERT INTO students (name, email, section) VALUES 
('Albert', 'albert@example.com', 'Mathematics'),
('Nathalie', 'nathalie@example.com', 'Computer Science'),
('Majid', 'majid@example.com', 'Physics'),
('Marwa', 'marwa@example.com', 'Chemistry'),
('Hafid', 'hafid@example.com', 'Biology')
''')

# Sauvegarder (committer) les changements
conn.commit()

# Afficher les données insérées pour vérification
cursor.execute("SELECT * FROM students")
rows = cursor.fetchall()
for row in rows:
    print(row)

# Fermeture de la connexion
conn.close()

Le code ci-dessus réalise les actions suivantes:

  1. Crée la table SQLite : students
  2. Insert 5 lignes de données
  3. Affiche les données