first commit
This commit is contained in:
commit
9b3d11ce08
41
README.md
Normal file
41
README.md
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
# API
|
||||||
|
|
||||||
|
## prodtgres
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Acerder à postgres
|
||||||
|
sudo su - postgres
|
||||||
|
|
||||||
|
# itintialisation de la directory data
|
||||||
|
initdb -D /var/lib/postgres/data
|
||||||
|
|
||||||
|
# Création d'un user
|
||||||
|
createuser --interactive
|
||||||
|
|
||||||
|
# Création d'une base de donnée
|
||||||
|
createdb myDatabase
|
||||||
|
|
||||||
|
# aller dans la base de donée
|
||||||
|
psql -d myDatabaseName
|
||||||
|
```
|
||||||
|
|
||||||
|
## SQLAlchemy
|
||||||
|
|
||||||
|
### engine
|
||||||
|
|
||||||
|
```python
|
||||||
|
# crée un eengine pour se copnnecter à une base de données avec un user
|
||||||
|
engine = create_engine(
|
||||||
|
"postgresql+psycopg2://postgres:password@localhost:5432/postgres",
|
||||||
|
isolation_level="",
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
#### isolation_level
|
||||||
|
| Niveau | Description | Effets |
|
||||||
|
| ------------------------------- | ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
|
| **READ UNCOMMITTED** | Peut lire des données non validées par d’autres transactions. | PostgreSQL ne le supporte pas vraiment, il se comporte comme READ COMMITTED. |
|
||||||
|
| **READ COMMITTED** (par défaut) | Chaque requête ne voit que les données validées à ce moment-là. | Si une autre transaction change quelque chose après que tu aies commencé, tu ne le vois qu’à la prochaine requête. |
|
||||||
|
| **REPEATABLE READ** | Toutes les requêtes dans la même transaction voient les mêmes données. | Tu vois un “instantané” cohérent pendant toute la transaction. Les nouvelles modifications des autres transactions ne sont pas visibles. |
|
||||||
|
| **SERIALIZABLE** | Niveau le plus strict. Les transactions se comportent comme si elles étaient exécutées l’une après l’autre. | Empêche tous les phénomènes d’anomalies concurrentes (lecture fantôme, etc.), mais peut provoquer des erreurs de serialization si conflit. |
|
||||||
|
| **AUTOCOMMIT** | Pas vraiment un niveau d’isolation | Exécute cette commande immédiatement, sans transaction
|
||||||
Loading…
Reference in New Issue
Block a user