DROP TABLE IF EXISTS couleur; -- déclinaison
CREATE TABLE couleur (
id_couleur INT AUTO_INCREMENT PRIMARY KEY
, libelle VARCHAR(255)
);
INSERT INTO couleur(id_couleur,libelle) VALUES
(1,'non défini'),
(2,'rouge'),(3,'bleu'),
(4,'vert'),(5, 'noir');
DROP TABLE IF EXISTS marque; -- filtre (vert)
CREATE TABLE marque (
id_marque INT AUTO_INCREMENT PRIMARY KEY
, libelle VARCHAR(255)
);
INSERT INTO marque(id_marque,libelle) VALUES
(1,'autre'),(2,'papermate'),
(3,'bic'),
(4,'mont blanc');
DROP TABLE IF EXISTS stylo;
CREATE TABLE stylo (
id_stylo INT AUTO_INCREMENT
, nom_stylo VARCHAR(255)
, prix_stylo NUMERIC(6,2) default 10
, image VARCHAR(255) default 'stylo_no_photo.png'
, stock INT default 4
,couleur_id INT default 1
-- , descriction VARCHAR
, marque_id INT
, FOREIGN KEY (couleur_id) REFERENCES couleur(id_couleur)
, FOREIGN KEY (marque_id) REFERENCES marque(id_marque)
, PRIMARY KEY(id_stylo)
);
INSERT INTO stylo(nom_stylo, prix_stylo, couleur_id) VALUES -- si on affiche les couleurs
('stylo plume',2.5,1), -- les couleurs doivent avoir une valeur
('stylo plume 2',3.4,1);
sql = '''
SELECT id_stylo AS id_article
, nom_stylo AS nom
, prix_stylo AS prix
, stock AS stock
-- , image AS image
FROM stylo
ORDER BY nom_stylo;
'''
mycursor.execute(sql)
stylos = mycursor.fetchall()
articles = stylos
sql = '''
SELECT id_marque AS id_type_article
,libelle
FROM marque
ORDER BY libelle
'''
mycursor.execute(sql)
marques = mycursor.fetchall()
types_article = marques
sql = "SELECT * , 10 as prix , concat('nomarticle',stylo_id) as nom FROM ligne_panier"
mycursor.execute(sql)
articles_panier = mycursor.fetchall()
prix_total = 123 # requete à faire
CREATE TABLE ligne_panier (
utilisateur_id INT,
stylo_id INT,
date_ajout DATETIME,
quantite INT,
PRIMARY KEY (utilisateur_id,stylo_id,date_ajout),
FOREIGN KEY (utilisateur_id) REFERENCES utilisateur (id_utilisateur),
FOREIGN KEY (stylo_id) REFERENCES stylo (id_stylo)
);
INSERT INTO ligne_panier(utilisateur_id,stylo_id,date_ajout, quantite )
VALUES
(2, 3, '2023-06-24', 1),
(2, 4, '2023-06-24', 3);
sql = "SELECT * , 10 as prix , concat('nomarticle',stylo_id) as nom FROM ligne_panier"
mycursor.execute(sql)
articles_panier = mycursor.fetchall()
prix_total = 123 # requete à faire