--- tags: - SQL --- tuto ytb sql *florian quand je lui demande de l'aide* # SQL pour les tung tung tung sahur (22/01/26) ## Modèle MVC > Le modèle MVC est une façon de concevoir un projet logiciel, en gros on sépare celui-ci en trois grandes parties distinctes séparant la logique de la vue et rend le travail plus facile. Modèle MVC par MDN Modèle MVC en prenant celui de grabber par exemple : - Model = Base De Donnée (ex: EMPLOYEES, COMPUTERS) - View = Tableau de bord, Site - Controller = Cerveau qui dirige les deux parties Model et View (ex: app.py) ## TUTO : COMMENT CR2ER UNE BDD SQL FACILEMENT EN 2 MINUTES (SUPER FACILE) ### Structure d'une Base De Données *celle de grabber pour l'exemple* ``` BDD (Etape 1) - grabberman ├── TABLES (Etape 2) - COMPUTERS │ ├── Colonne (Etape 3) - PcId, entier/clé primaire │ │ └── Donnée (Etape 4) │ ├── Colonne (Etape 3) - Hostname, chaîne de charactère │ └── Colonne (Etape 3) - MacAddress, chaîne de charactère └── TABLES (Etape 2) - EMPLOYEES ├── Colonne (Etape 3) - UserId, entier/clé primaire ├── Colonne (Etape 3) - Username, chaîne de charactère └── Colonne (Etape 3) - PcId, clé secondaire ``` ### Etape 1 : Créer une BDD `sqlite3 grabberman.db` <- Commande qui crée une DB qu'on appellera ici "grabberman" ### Etape 2 : Créer une table ```sql CREATE TABLE "COMPUTERS" ( PcId INTEGER PRIMARY KEY AUTOINCREMENT, Hostname VARCHAR(50) NOT NULL, MacAddress VARCHAR(50) ); ``` !!! note Ici on crée une table dans laquelle on stockera des données (des PC que l'on grab par exemple) ### Etape 3 : Ajouter des données dans une table `INSERT into COMPUTERS (Hostname, MacAddress) VALUES ('mypc', '1B:12:F0:FL:94');` !!! note Pour ajouter une donnée dans une tableau, on **INSERE** dans le **TABLEAU** donné les **VALEURS** dans les **Colonnes** ### Etape 4 : Créer un autre tableau avec une clé liée (foreign key) ```sql CREATE TABLE "EMPLOYEES" ( UserId INTEGER PRIMARY KEY AUTOINCREMENT, Username VARCHAR(50) NOT NULL, FOREIGN KEY (PcId) REFERENCES COMPUTERS(PcId) ); ``` !!! note On recommence comme à l'étape 2, en ajoutant une clé étrangère **foreign key**, qui lie une clé extérieure, **PcId** ici, dans notre second Tableau