Bonjour,
J'ai commencé à m'intéresser au SQL il y a quelques semaines (juste pour mon épanouissement personnel). J'ai suivi plusieurs tuto et fais quelques exercices. Maintenant que j'ai quelques bases, j'aimerai intégrer les bases de données à l'un de mes projets:
Je voudrais faire une base de données de carte Magic pour ensuite essayer d'y rajouter un système recherche poussée. (Je sais ça existe déjà et ça n'a pas l'ai compliqué mais le but est de m’entraîner aux subtilités du SQL)
Ma base de donnée est constitué de plusieurs tables de une colonne:
COULEUR (contenant toute les couleurs qu'une carte peut avoir)
EDITION (contenant toute les éditions existantes aujourd'hui)
TYPE , SOUS-TYPE , ...
ainsi qu'une table CARTE de 17 colonnes (une pour chaque caractéristique de la carte : nom, cout, edition, ...) qui va contenir toute les cartes.
Jusque là, rien de bien compliqué.
Cependant j'ai une petite exigence à mettre sur la table CARTE et je ne sais pas si c'est possible de les coder en SQL, et si oui, comment le fait-on :
Par exemple, je voudrais que la colonne edition de la table CARTE ne puisse contenir que des valeurs présentes dans la table EDITION. Je sais qu'avec ENUM on peut définir une liste de valeurs autorisées, mais la table EDITION peut changer au cours du temps (au fur et à mesure des nouvelles sorties et mise à jour par exemple) et donc les valeurs autorisées aussi. Je voudrais éviter d'avoir à modifier la construction de la table CARTE mais juste ajouter ou modifier les valeurs de la table EDITION .
Voilà. Pour info, j'utilite SQLite.
Merci d'avance
Partager