Commit 4b0adc4b authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Retouche du README

parent 12c3de3d
Loading
Loading
Loading
Loading
Loading
+6 −20
Changes for README.md: 6 added lines, 20 removed lines.
Original line number Diff line number Diff line
@@ -20,15 +20,6 @@ UnicaenDbImport
en [cliquant ici](https://git.unicaen.fr/lib/unicaen/db-import/tree/2ceb3a7e#dans-le-moteur).*


Installation
------------

- Ensuite, ajoutez le module à vos dépendances :

```bash
composer require unicaen/db-import
```

Introduction
------------

@@ -67,9 +58,6 @@ de les rapprocher : on l'appellera le "code source" (cf. paramètre de config `s

**Cet identifiant commun DOIT être de type chaîne de caractères.**

Afin de faciliter l'adaptation au plus grand nombre de plateforme de base de données, UnicaenDbImport s'appuie 
en partie sur l'ORM Doctrine 2.


Différence avec unicaen/import
------------------------------
@@ -189,7 +177,7 @@ Le module fournit une ligne de commande pour lancer :
*NB : Chacune de ces commandes réalise l'import ou la synchronisation une seule fois. 
Pour importer/synchroniser en permanence, il faut programmer le lancement périodique de la commande à l'aide de CRON
par exemple.* 
Ex : `*/15 6-19 * * 1-5 root /usr/bin/php /path/to/app/public/index.php run import --all 1> /tmp/zebu-cron.log 2>&1`
Ex : `*/15 6-19 * * 1-5 root /usr/bin/php /path/to/app/public/index.php run import --all 1> /tmp/cron.log 2>&1`


Contraintes
@@ -243,17 +231,15 @@ les alias pour chaque colonne. Le type des colonnes, lui, en revanche devra êtr

Si vous ne souhaitez pas consigner l'auteur des créations, vous devrez retirer le `NOT NULL` sur la colonne `created_by`.

**Remarque importante** : la disparition d'un enregistrement dans la source ne provoque pas sa supression physique 
**Remarque importante** : la disparition d'un enregistrement dans les données source ne provoque pas sa supression physique 
dans la table destination ; ce dernier est simplement "marqué comme supprimé" (historisé) à l'aide des colonnes 
d'historique `deleted_on` (date et heure de suppression) et `deleted_by` (identifiant de l'auteur de la suppression).

#### Colonnes `source_id` et `source_code`

La *table destination* doit obligatoirement posséder les colonnes suivantes : 
- `source_id` : clé étrangère identifiant la source de la donnée, correspondant à un 'id' de la 
  [table `SOURCE`](#Table SOURCE).
- `source_code` : fameux [identifiant commun](#Identifiant commun) permettant de rapprocher la donnée source de la 
  donnée destination.
    - `source_id` : clé étrangère identifiant la source de la donnée, correspondant à un 'id' de la table `SOURCE`.
    - `source_code` : identifiant commun permettant de rapprocher la donnée source de la donnée destination.

Exemple en PostgreSQL :
```sql
@@ -267,7 +253,7 @@ Fonctionnement

### Import

Typiquement, il s'agit d'importer des données issues d'une **base de données** source (différente de celle de celle de 
Il s'agit d'importer des données issues d'une **base de données** source (différente de celle de celle de 
destination) ou d'une **API** (web service).

Schéma du déroulement d'un import :
@@ -303,7 +289,7 @@ Dans une **synchronisation à partir d'une source dite "externe"**, la source pe
- soit une **API** (web service).

Quelle que soit la nature de la source, cette synchronisation se subdivisera en 2 sous-tâches successives : 
un [import](#import) puis une [synchronisation locale](#Synchronisation locale).
un import puis une synchronisation "locale".

Schématisation du déroulement d'une synchro à partir d'une source "externe" :