Ordre TP geo

2025-09-17 08:44:03 +02:00
parent c9c23f18a8
commit fb9b62323f
4 changed files with 29 additions and 27 deletions

@@ -1,6 +1,4 @@
---
title: Base de données spatiales
---
# Base de données spatiales
> [!NOTE]
> **définition :** Une base de données spatiale est une base de données optimisée pour stocker, interroger et manipuler des données géométriques en 3 dimensions (spatiales) et par extension des données géographiques.
@@ -59,7 +57,7 @@ Quelques SRID populaires
Il existe des dizaines d'autres système suivant l'endrit du monde que l'on veut représenter.
### Quand utiliser le type de données Géographie ?
### Quand utiliser le type de données Géographie ?
Le type de données géographie permet de stocker des données en coordonnées longitude/latitude, mais à un coût : il y a moins de fonctions définies sur `GEOGRAPHY` que sur `GEOMETRY` ; les fonctions qui sont définies demandent plus de temps de traitement CPU pour être exécutées.
@@ -88,20 +86,6 @@ select ST_PointFromText('POINT(15 5)');
`ST_MakePoint` n'est pas conforme au standard mais il a l'avantage d'être rapide et de travailler sur des nombres à la place du texte.
```geojson
{
"type": "Polygon",
"coordinates": [
[
[-90,30],
[-90,35],
[-90,35],
[-85,35],
[-85,30]
]
]
}
```
### Ligne

@@ -10,7 +10,7 @@ Le DCL est utilisé principalement par les administrateurs de bases de données
Cette commande permet d'accorder des privilèges à des utilisateurs ou des rôles. Par exemple, elle peut autoriser un utilisateur à lire, modifier ou supprimer des données dans une table spécifique.
```sql
GRANT SELECT ON livres TO albert;
GRANT SELECT ON livre TO albert;
```
### Revoke
@@ -18,15 +18,15 @@ GRANT SELECT ON livres TO albert;
Cette commande permet de retirer des privilèges précédemment accordés à un utilisateur ou un rôle
```sql
REVOKE SELECT ON livres FROM albert;
REVOKE SELECT ON livre FROM albert;
```
### Deny
Cette coomande est utilisée dans certains systèmes, comme Microsoft SQL Server, pour refuser explicitement des privilèges à un utilisateur ou un rôle, même si celui-ci a reçu des permissions via la commande GRANT
Cette commande est utilisée dans certains systèmes, comme Microsoft SQL Server, pour refuser explicitement des privilèges à un utilisateur ou un rôle, même si celui-ci a reçu des permissions via la commande GRANT
```sql
DENY SELECT ON table_name TO user_name;
DENY SELECT ON livre TO albert;
```
#### Pourquoi utiliser Deny ?

21
tp1.md

@@ -8,6 +8,21 @@ Ajouter les couches
- Zommer sur l'ile de Batz (En Bretagne, au nord de Morlaix)
### POI (Point of Interest)
- Ajouter une nouvelle table pour les points
- Ajouter un point depuis QGIS : menhir de Kreach ar Bolloch (A) un autre sur le menhir de Porz ar Roc'h
- Calculer la distance entre les 2 menhirs
- Importer le fichier point.csv
```sql
create table point (
id serial primary key,
nom text not null,
altitude double precision,
geom geometry(point, 4326) not null
);
```
2. Créer une table zone
```sql
@@ -49,11 +64,7 @@ create table zone (
- Fusionner les 3 régions pour faire une entité ile
- Faire l'intersection des pinèdes avec l'ile pour découper proprement ces zones
### POI (Point of Interest)
- Ajouter une nouvelle table pour les points
- Ajouter un point depuis QGIS : menhir de Kreach ar Bolloch (A) un autre sur le menhir de Porz ar Roc'h
- Calculer la distance entre les 2 menhirs
- Importer le fichier point.csv
### Route

@@ -193,6 +193,13 @@ Mais quand la dimension n augmente, les distances entre points tendent à se res
- [Indexation vectorielle](vecteurs.index)
## PostgreSQL
- `<->` Distance L2
- `<+>` Distance L1
- `<#>` Produit scalaire
- `<=>` Similarité cosinus
## Exercice
1. Construire une base de produits avec vecteurs nutritionnels.