[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Script Bash pour convertir BD Access vers MySQL ?



Le Fri, 19 Jul 2013 14:19:13 +0200,
Erwan David <erwan@rail.eu.org> a écrit :

> On Fri, Jul 19, 2013 at 02:11:47PM CEST, Alain Vaugham
> <alain@vaugham.com> said:
> > Le Fri, 19 Jul 2013 13:25:06 +0200,
> > Sébastien NOBILI <sebnewsletter@free.fr> a écrit :
> > 
> > > Le vendredi 19 juillet 2013 à 12:41, Alain Vaugham a écrit :
> > > > > J'ai probablement une piste :)
> > > > > 
> > > > > →
> > > > > http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/
> > > > 
> > > > Mon expérience : les formats des champs Access ne sont pas
> > > > forcément identiques à ceux de Postgres. Donc il me faut tous
> > > > les reformater à la main pour les mettre au format Postgres.
> > > > 
> > > > S'il existe un script qui sait deviner comment transformer les
> > > > formats de la source vers le format de la cible alors je suis
> > > > preneur aussi!
> > > 
> > > Qu'entends-tu par « les formats des champs Access ne sont pas
> > > forcément identiques à ceux de Postgres » ? Tu pourrais donner un
> > > exemple ?
> > 
> > Super : c'est vendredi!
> > Cependant, je ne voudrai pas voler le post initial...
> > 
> > Voici l'exemple pour lequel je n'ai pas encore trouvé de solution
> > rapide et simple :
> > Access dispose d'un champ de type NuméroAuto qui accepte par défaut
> > un entier long, soit incrémental, soit aléatoire.
> > L'intérêt de ce type de champ c'est que si une ligne de la table est
> > détruite, le contenu de ce champ est "brûlé". Il n'est donc plus
> > possible de le réutiliser dans une nouvelle ligne.
> > C'est l'usage type d'une traçabilité de numéros de série. Un numéro
> > de série est sensé être unique. Si un produit est détruit, son
> > numéro de série ne doit plus être réutilisatable. 
> > Bon, d'accord on pourrait trouver une autre solution que l'usage du
> > NuméroAuto en ajoutant une colonne pour indiquer l'état du numéro de
> > série... mais dans mon cas, je me contente de détruire la ligne du
> > numéro de série dont le produit a été mis au rebus.
> > 
> > Extraire toutes les lignes de ce champ pour les mettre dans un
> > fichier csv et les importer dans Postgres ne pose aucun problème.
> > Là n'est pas la question.
> > Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un
> > format de champ qui corresponde au format NuméroAuto d'Access. Dans
> > Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des
> > numéro brûlés.
> > 
> > Donc pour migrer une telle colonne je n'ai pas de solution qui soit
> > automatique.
> 
> En SQL on fait ça avec une séquence.
> 

Ce n'est pas suffisant.
Malheureusement, une séquence seule autorise l'usage des "numéros
brûlés".




-- 
Alain Vaugham
Clef GPG : 0xD26D18BC


Reply to: