PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 Migration » Dans Select utiliser Aliasnom = Champ au lieu Champ AS Aliasnom » 16/02/2022 16:53:41

Mascaret
Réponses : 1

Bonjour,

Nous souhaitons migrer une application d'un SGBD IngresSQL vers PostgreSQL.

Sous Ingres, nous utilisons du code du style :
SELECT nomclient = clinom
FROM client

Visiblement PostgreSQL ne reconnaît pas cette syntaxe et veut :
SELECT clinom AS nomclient
FROM client

Nous avons énormément de champ comme ça.
Il y a t'il un paramètre à activer (ou un package) dans PostgreSQL pour que ça accepte la première syntaxe (avec smile

Merci à tous

#2 C et C++ » Pb en exécution : EXEC SQL SELECT retournant plusieurs enregistrements » 28/10/2021 15:55:34

Mascaret
Réponses : 0

Bonjour,

Nous souhaitons migrer une application d'un SGBD IngresSQL vers PostgreSQL.

Sous Ingres, nous utilisons du code du style :
EXEC SQL SELECT clicode, clinom
                INTO :cli.clicode, :cli.clinom
                FROM CLIENT ORDER BY CLICODE;
                printf("SELECT - sqlcode = %d sqlstate = %s\n", sqlca.sqlcode, sqlca.sqlstate);
                EXEC SQL BEGIN;
                printf("LOOP Client %d %s\n", cli.clicode, cli.clinom);
                EXEC SQL END;

Ce qui permet sans passer par un curseur d'effectuer du code après chaque enregistrement trouvé dans la requête.

Sous Postgre, la précompilation se passe bien, mais en exécution, après le select, on à l'erreur sqlcode -203 (ECPG_TOO_MANY_MATCHES) sqlstate 21000 (cardinality_violation).
Ce qui sous-entend visiblement que le select donne plusieurs enregistrements, ce qui ne serait pas permis.

Nous avons utilisé cette méthode dans de nombreux programmes et nous cherchons à effectuer un minimum de modifications si c'est possible

Est-ce que quelqu'un saurait comment palier à ce problème (sans passer par un curseur évidemment)

Merci à tous

Pied de page des forums

Propulsé par FluxBB