mirror of
https://github.com/buchtioof/notes.git
synced 2026-05-02 17:43:28 +02:00
76 lines
2.4 KiB
Markdown
76 lines
2.4 KiB
Markdown
---
|
|
tags:
|
|
- SQL
|
|
- Devops
|
|
---
|
|
|
|
# SQL pour les tung tung tung sahur
|
|
|
|
## 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.
|
|
|
|
<img src="https://developer.mozilla.org/en-US/docs/Glossary/MVC/model-view-controller-light-blue.png" alt="Modèle MVC par MDN" width="200px">
|
|
|
|
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
|