# Audit des Données Orphelines - Relations FK
_Généré automatiquement pour identifier les incohérences de données_

## Résumé Exécutif

Cette analyse identifie les lignes dans la base de données qui référencent des enregistrements inexistants.
Ces orphelins empêchent l'ajout de contraintes de clé étrangère strictes.

## Avenants contrats auto-référencés

**Relation:** `avenants_contrat`.`id_avenant` → `avenants_contrat`.`id`

### Statistiques

- **Total de lignes non-NULL:** 120
- **Nombre de valeurs orphelines:** 5
- **Taux d'orphelins:** 4.2%
- **Lignes valides:** 115

✓ **Acceptable:** Moins de 10% d'orphelins

### Exemples de valeurs orphelines

```
121
122
123
124
125
```

### Exemples de lignes problématiques

| ID | Valeur référencée |
|---|---|
| 116 | 121 |
| 117 | 122 |
| 118 | 123 |
| 119 | 124 |
| 120 | 125 |

### Recommandations

- Nettoyer manuellement les 5 orphelins
- Ou utiliser `SET NULL` dans la FK pour gérer les cas manquants
- Ou ignorer les lignes orphelines (approche moins recommandée)

---

## Avenants → Contrats

**Relation:** `avenants_contrat`.`id_contrat` → `contrats`.`id_contrat`

### Statistiques

- **Total de lignes non-NULL:** 120
- **Nombre de valeurs orphelines:** 0
- **Taux d'orphelins:** 0.0%
- **Lignes valides:** 120

✓ **Acceptable:** Moins de 10% d'orphelins

### Exemples de valeurs orphelines

```
```

### Exemples de lignes problématiques

| ID | Valeur référencée |
|---|---|

### Recommandations

✓ **Aucune action requise.** Cette relation peut être ajoutée comme FK stricte.

---

## Contrats auto-référencés (source vs auto-généré)

**Relation:** `contrats`.`ID_Contrat` → `contrats`.`id`

### Statistiques

- **Total de lignes non-NULL:** 2,537
- **Nombre de valeurs orphelines:** 2,341
- **Taux d'orphelins:** 92.3%
- **Lignes valides:** 196

⚠️ **CRITIQUE:** Plus de 50% des références sont orphelines

### Exemples de valeurs orphelines

```
0
2541
2568
2576
2577
2579
2606
2619
2624
2661
```

### Exemples de lignes problématiques

| ID | Valeur référencée |
|---|---|
| 37 | 0 |
| 361 | 2541 |
| 362 | 2568 |
| 363 | 2576 |
| 364 | 2577 |

### Recommandations

- **Problème structural détecté.** Nécessite une investigation approfondie
- Vérifier la mapping des IDs entre Access et MySQL
- Envisager un rechargement avec clés source converties

---

## Contrats → Employés

**Relation:** `contrats`.`Id_Salarie` → `employes`.`id`

### Statistiques

- **Total de lignes non-NULL:** 2,537
- **Nombre de valeurs orphelines:** 768
- **Taux d'orphelins:** 30.3%
- **Lignes valides:** 1,769

⚠️ **ATTENTION:** Plus de 10% des références sont orphelines

### Exemples de valeurs orphelines

```
841
843
846
848
850
851
852
854
861
865
```

### Exemples de lignes problématiques

| ID | Valeur référencée |
|---|---|
| 371 | 841 |
| 372 | 843 |
| 373 | 846 |
| 374 | 848 |
| 375 | 850 |

### Recommandations

- Audit recommandé pour comprendre d'où viennent ces références
- Vérifier si les données source sont corrompues en Access
- Envisager une migration partiellement manuelle

---

## Visites médicales → Employés

**Relation:** `visites_medicales`.`id_salarie` → `employes`.`id`

### Statistiques

- **Total de lignes non-NULL:** 980
- **Nombre de valeurs orphelines:** 461
- **Taux d'orphelins:** 47.0%
- **Lignes valides:** 519

⚠️ **ATTENTION:** Plus de 10% des références sont orphelines

### Exemples de valeurs orphelines

```
841
843
846
850
851
852
854
861
890
895
```

### Exemples de lignes problématiques

| ID | Valeur référencée |
|---|---|
| 351 | 841 |
| 353 | 843 |
| 352 | 846 |
| 335 | 850 |
| 336 | 851 |

### Recommandations

- Audit recommandé pour comprendre d'où viennent ces références
- Vérifier si les données source sont corrompues en Access
- Envisager une migration partiellement manuelle

---

