Re: [pgsql-fr-generale] Migration de base de donnée MSSQL -> PGSQL

From: Jean-Paul ARGUDO <jean-paul(at)argudo(dot)org>
To: temsa <temsa(at)free(dot)fr>
Cc: Liste PostgreSQL France <pgsql-fr-generale(at)postgresql(dot)org>
Subject: Re: [pgsql-fr-generale] Migration de base de donnée MSSQL -> PGSQL
Date: 2004-09-20 07:35:59
Message-ID: 414E885F.2050003@argudo.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

temsa wrote:
> | Pour que tout cela marche, il vous suffit simplement de retirer les
> | " (doubles quotes) de vos sources SQL...
>
> c'est exactement ce que j'ai fait, a ceci près que j'utilise un
> lnagage (à la con, du moins pour ça) qui ne stocke pas ses sources en
> clair, mais à moitié en bianire: powerbuilder...
>
> |
> | Pour se faire, en perl, -par exemple:
> |
> | perl -i -pe 's/"//g' *.sql
>
> J'ai même utilisé plus compliqué afin de ne retirer à peu près que
> les appels au champs et aux tables...
>
> perl -pi.bak -e 's/"([[:alnum:]_]+)"/$1/g'
>
> mais ceci je l'ai fait dans un export de ma base! parceque j'ai tenté
> de garder ma base en majuscule, ça ne suffit pas, il faut poutr
> pouvoir utiliser TOTO au lieu de "TOTO" dans une requete, que toto
> soit en minuscules dans la base
>
> | retirera toutes les doubles quotes de vos sources SQL ..
> | (attention, j'ai bien dit TOUTES! :)...)
> |
> | Au final, votre SQL sera bien plus lisible, sans toutes ces doubles
> | quotes, non?
>
> ça je suis plutôt d'accord, mais là n'est pas ma question.
> il m'a fallu plus d'une semaine pour passer a peu près 60% de l'appli
> pour postgres. Pendant ce temps la, les développeur ont avancés sur
> pas mal de fichiers, et je ne me vois pas utiliser diff avec des
> fichiers binaires

Plusieurs remarques:

* laissez la liste PostgreSQL Fr en copie! Le débat interresse surement
d'autres personnes;

* je n'avais fait que deviner votre problème, vous auriez pu d'emblée
nous expliquer tout cela :)

* je ne comprends pas bien le planing de votre intervention? Si je
comprends bien, c'est une migration et en même temps ça code d'un autre
côté? Ce n'est pas trop dans les règles de l'art. En théorie, on arrête
tout dév, on migre, puis on continue à developper. Ou alors, vous le
faites sur une branche stable de votre soft (qui n'est pas censée
évoluer, donc)??

* faites passer le mot à vos développeur et votre probleme se résoud
tout seul non? « Pas de doubles quotes dans le SQL, merci les gars »;

> C'est pour ça que je cherche une solution plus simple, consistant a
> configurer la base pour que ça fonctionne directement. C'est plus
> simple tout de même,car le portage est vraiment long, alors qu'il
> pourrait prendre qualques heures au plus avec cette simple fonction!

Si je comprends bien, vous attendez de PG qu'il fasse fi des doubles
quotes?...

Sincèrement je ne vois qu'une solution: hacker PG, trouver le bout de
code qui traite les doubles-quotes dans la requete SQL, et simplement la
by-passer.

Cela nécessite qques connaissances en C, et que vous sachiez compiler PG.

Le *gros* hic, c'est que vous devrez maintenir votre vérue par rapport
aux évolutions de PostgreSQL.

Alors, au final, je vous conseille de rédiger un e.mail explicatif de
votre problème, en anglais, sur la liste des hackers de PostgreSQL, en
leur demandant de bien vouloir implémenter votre fonctionalité dans PG.

Par exemple, elle serait liée à une clé dans le fichier postgresql.conf,
et aurait une syntaxe de ce type:

ignore_double_quotes = true

Je pense que cela solutionnerait votre problème, et pourrait intéresser
toutes les personnes qui migrent depuis M$ SQL.

Au plaisir de vous lire,

Cordialement

PS: je jette un coup d'oeuil dans les sources, des fois que ce soit un
truc facile à faire, je vous envoie le patch :-)

--
Jean-Paul Argudo
www.Argudo.org
www.PostgreSQLFr.org

In response to

  • Re: Mig at 2004-09-19 17:21:20 from Jean-Paul ARGUDO

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Toffe 2004-09-20 13:03:20 Re: [pgsql-fr-generale] Re: [pgsql-fr-generale] Migration de base de donnée MSSQL -> PGSQL
Previous Message Toffe 2004-09-19 17:36:05 Re: Mig