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 Re : pgAdmin4 » Installation Pgadmin4 v2.1 DESKTOP OK » 15/10/2017 05:45:08

rectification la procédure fonctionne aussi pour Manjaro avec pgadmin4 v2.0
test concluant

la difference est dans
install python-virtualenv
install libqxx

et en ayant installer postgresql tout devrait être identique à la procédure ci dessus

oufff

wink wink wink wink wink wink wink wink wink wink wink wink wink wink wink

@bientôt

#2 Re : pgAdmin4 » Installation Pgadmin4 v2.1 DESKTOP OK » 15/10/2017 05:11:13

pour Manjaro

https://www.manjaro.fr/forum/viewtopic.php?f=17&t=2454

suivre le model  il est opérationnel.
l'installation est grandement simplifié.

a ce jour 2017/10/15  la version est 9.6 et pgadmin 1.6   

ne pas confondre avec l'environnement debian

smile  smile smile smile smile smile smile smile

@bientôt

#3 pgAdmin4 » Installation Pgadmin4 v2.1 DESKTOP OK » 15/10/2017 05:02:57

jplaroche
Réponses : 2

bonjour ,
instatallation sous XUBUNTU   et cela fonctionne  je suis en postgresql 10.0 ou 9.6 cela fonctionne


j'ai choisi le mode desktop car je ne touche pas à apache2  aucune intervention  cela laisse le serveur libre , je n'ai pas vue de grande différence en mode serveur  sauf que là il faut l'installer sur les user qui en ont besoin.

la manière est identique sur d'autre distribution


dans la console (terminal)

on installe les prérequis
sudo apt-get install python3-venv python3-pip libpq-dev python3-dev


on ouvre l'environnement
pyvenv pgadmin4

cd pgadmin4

source ./bin/activate

pip wget https://ftp.postgresql.org/pub/pgadmin/ … ne-any.whl

on installe dans l'environnement
pip install pgadmin4-2.1-py2.py3-none-any.whl

si il y a lieu ne pas s’inquiéter mais suivre ce que raconte la console 
pip install --upgrade pip

pour l'instant avoir dans l'avenir si upgrade
pip install psycopg2-binary


attention donner autorisation  sinon cela ne marche en desktop

cd ./lib/python3.5/site-packages/pgadmin4/
nano ./config.py

SERVER_MODE = False



ouvrir dans votre /home/      pgadmin.sh
copier

#!/bin/bash


cd pgadmin4
source bin/activate

python ./lib/python3.5/site-packages/pgadmin4/pgAdmin4.py

le lanceur

lanceur
xterm -hold  -geometry '80x5' -T PGADMIN4  -e  /home/???le votre??/pgadmin.sh

dans votre browser

http://127.0.0.1:5050/browser/


smile smile smile smile smile smile smile smile smile smile smile

@bientôt

#4 Re : pgAdmin4 » partage sur pgAdmin4 » 26/08/2017 06:37:04

suite
2017-07-13 - 4 pgAdmin v1.6 libérés
avec la dernière version 9.6

le problème n'est pas la fluidité ect....

mais bien le rendu DDL est faux . et toujours en beug,
le rsultas par rapport a DBEAVER ils en sont loin , je ne parle même pas de pgadminIII

les requêtes sont ok

mais la creation d'une table et le résultat DDL est faux .

je perds confiance , avec pgadmin 4...   je me tourne vers un autre browser qui lui est correcte.  on verra beaucoup plus tard pour pgadmin 4

#5 Re : pgAdmin4 » paramétrage de l'éditeur SQL » 29/06/2017 11:45:43

damalaan a écrit :

Bonjour

J'utilise pgadmin4 (en v1.4 actuellement) de temps en temps pour voir son évolution (d'habitude j'utilise pgadmin3 en 1.22.2 pour postgres 9.6)
je ne trouve la possibilité de paramétrer la casse des mots clefs SQL (que je voudrais mettre en majuscules automatiquement).
J'ai remarqué aussi que les commentaires (-- ou /* */) ne sont pas matérialisés comme tels (en vert dans pgadmin3), y a t il également un paramétrage que j'ai loupé ?!

merci

bonjour , effectivement c'est une des différences et pour moi contraignante  et la récupération ddl n'arrange pas les choses.  je me suis fait mon propre constructeur (create table ) texte et xml  pour le moment.

#6 Re : pgAdmin4 » suite de la discution pgAmind4 et fork pgAdmin3 » 20/03/2017 21:45:27

gleu a écrit :

Ce n'est pas que le mot schéma ne me plaît pas, c'est qu'il faut qu'on parle de la même chose. Il me semble logique que, pour parler de PostgreSQL, on utilise la terminologie PostgreSQL. Et sans vouloir être insultant, pour pouvoir vous répondre, il faut comprendre en premier lieu le problème. Vos phrases ne sont pas des phrases. Ça manque de ponctuation, ça manque de cohérence... je suis désolé, j'aimerais bien vous aider, mais je ne comprends rien à vos messages.

Enfin, concernant pgAdmin4, personnellement, je ne l'utilise pas. Je ne connais aucun client qui l'utilisent actuellement car trop récent et pas assez stable. J'ai utilisé pgAdmin3 pendant un bon moment, principalement parce que je faisais partie de l'équipe de développement. Mais dans ma vie professionnelle, je n'utilise que psql. C'est extrêmement rare que j'utilise pgAdmin, et généralement il s'agit de pgAdmin pour les clients qui n'utilisent que Windows (là où psql est difficilement utilisable).

bonjour,
moi j'utilise pgadmin parce que :
j'ai besoin de comprendre pour faire des migrations de base de donnée DB2 AS400  et PostgreSql .
bien-sur j'utilise la documentation de PostgreSql , pour travailler et pour générer avec les formats mise à disposition du catalogue.

synoptique de traitement :
envoyer sous format csv de puis l'as400 (simple)
envoyer la procédure identique à une création faite par PostgreSql  afin d'automatisé cette migration et transferts de données .(simple )

puis je fais une extraction avec ECPG  de postgresql sous format XML .
puis je prépare mes librairies  (génération automatique de code  ECPG ) de tel manière que lorsque les programmes les utilises, le partage (1)OPDP soit actif au sein du process . D’où un gain très important lors du développement et en maintenance .

exemple:
Je reprends les programmes qui font du CGI sur AS400 en RPGILE(langage natif du 400), et les récris  puisque j'ai fait les LIBc++  je me retrouve à faire du CGI en mode LG4 le BUT, et la tranquillité d'utiliser les tables d'une façon uniforme. pourquoi le CGI parce-qu’en plus d'être portable , aujourd'hui avec le (2)websocket on peu faire du temps réel.

les résultats sont surprenant tant en rapidité , ainsi que pour la sécurité (voir rollback et accès ainsi que la tenu d'enregistrement avec le websocket)
les méthodes étant validé le service Informatique et le DBA , ils prennent actes et tout rentre dans les process à suivre pour le développement .

voilà pourquoi je m'inquiète:
vouloir une évolution constante afin de bénéficier des améliorations ( sur l'as400 cet une obligation ce qui permet d'avoir aucun métro de retard).

De plus  le DBA lui regarde avec la vue pgadmin , et moi je regarde avec les procédures mise à disposition par PostgreSql et pgadmin .  Jusqu'à présent il y avait une cohérence. Maintenant en 9.6.2 et pgadmin4 v1.3 ce n'est plus le cas.

je ne cherche pas à avoir raison.   je vous fourni la raison des problèmes .

je ne demande pas une solution , mais simplement si quelqu'un est partie sur une autre solution je serais preneur, ou pour partager.  (enfin dommage que personne n'est intéressé)
d’où la définition de data structure que je pense devoir développer afin de répondre au DBA, et au service informatique . 

@bientôt

ps peut-être suis-je plus clair.
(1)OPDP:  partage des process(fonction), des objet(field), des data(donnée), dans un même espace  donc les process et Objets ne sont définit qu'une  seul fois pour l'ensemble du projet.

(2) WEBSOCKET : solution validé par l'ensemble des acteurs Informatique et les grandes Industries, janvier 2016.

http://forums.postgresql.fr/viewtopic.php?id=3323

#7 Re : pgAdmin4 » suite de la discution pgAmind4 et fork pgAdmin3 » 20/03/2017 08:44:48

gleu a écrit :

Pour commencer, merci de créer une discussion par problème et non pas les entasser dans la même discussion.

Ensuite, je ne comprends pas grand chose à ce que vous dites.

strictement identique au pg_restore pas de schéma à l'affichage

Qu'est-ce que vous entendez par schéma ? Quant à l'affichage, je suppose que vous parlez de ce qu'affiche pgAdmin... avez-vous pensé à rafraichir le navigateur ?

pour avoir votre schéma il faut passer par la création de colonne ????

Une colonne n'a pas de schéma. Une table, une vue, une procédure stockée, oui. Mais pas une colonne. Du coup, je pense qu'on ne parle pas de la même schéma pour les schémas.

Concernant pgAdmin4, personnellement, je pense en effet qu'il faudra attendre bien un an pour qu'il se stabilise.

je pensais faire le suivi et je ne dois pas être le seul dans ce cas ..... et je m'attendais a un peu plus d'activité sur le sujet.


breff j'arrive de l'aS400  c'est vrais là il n'y a pas de problème . le schéma est vue comme une procédure stockée pour parler dans votre langage  mais le catalogue représente bien plus que çà

quand à la  définition type SQL     'puisque le mot schémas ne vous plaît pas '     d'une version à l'autre pour pgadmin4 varie beaucoup , je comprends bien que cela évolue mais quand on marque que c'est la meilleurs au monde ..... il faut faire en sorte au moins de donner l'équivalent  au départ et fonctionnel .
pour la définition d'une colonne : lorsqu'on ne retrouve pas  la même chose dans une procédure stockée ?????
j'ai plus de 40 ans de service je veux bien être un papy mais je sais me servir d'un PC depuis les année 85 mes premiers logiciels pour AMI association médecine international à titre gratuits....


un schémas:  Définition d'une Data Structure  (DDS)   ou procédure stockée de définition de table.  l'ensemble du mots schéma pour une table recouvre ce qui peut permettre de comprendre sa définition ses autorisations ect...
Dans l'exemple suivant le schéma catalogue  défini la table des clients facturation  est créé en même temps.

exemple raccourci ... pgadminIII  car je ne peut pas vous le fournir en pgadmin4 v1.3 venant d'une procédure stockée (sauf si vous passer par la création de colonnes ... ou la représentation de la procédure stockée n'est pas viable )  par contre fonctionnait en v1.2  allez-y comprendre quelques choses effectivement c'est un manière de pas avoir de beug que de supprimer les affichages .....

- Table: public."FC0CLI"

-- DROP TABLE public."FC0CLI";

CREATE TABLE public."FC0CLI"
(
  "C0CDEP" character(3), -- CODE DEPARTEMENT
  "C0NCLI" numeric(6,0) NOT NULL, -- N° CLIENT

  CONSTRAINT "FC0CLI_pkey" PRIMARY KEY ("C0NCLI")
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public."FC0CLI"
  OWNER TO postgres;
COMMENT ON TABLE public."FC0CLI"
  IS 'CLIENT FACTURATION';
COMMENT ON COLUMN public."FC0CLI"."C0CDEP" IS 'CODE DEPARTEMENT';

COMMENT ON COLUMN public."FC0CLI"."C0NCLI" IS 'N° CLIENT';


plus la peine de répondre je laisse tombé . de toute façon il n'y a pas de discussion sur ce sujet , soit les personnes sans foutes ou qu'ils ce sont tourné vers autre chose . ou qu'il n'y a aucun intérêt.

je vais résoudre mon problème autrement, dommage que Postgresql est accepté  cela , son image sans trouve ternie. Fournir un outil peu fiable de base .....

quand à l'usure de la version pgadmin4  si vous ne comprenez pas c'est sûrement que vous ne l'utilisez pas sinon vous auriez trouvé  mes problèmes tant il sont évident et rende l'utilisation impossible et surtout pas fiable.

merci d'avoir pris le temps de lire.

#8 Re : pgAdmin4 » suite de la discution pgAmind4 et fork pgAdmin3 » 19/03/2017 08:36:41

postgresql 9.6.2
version 4 1.3
le vacuum fonctionne.

# DATA
         pg_dump     --format custom -a                              --encoding utf8 --host 127.1.1 --port 5432 --username postgres CGIFCH  > $CGIFCH_DATA
# SCHEMA
         pg_dump     --format custom --section pre-data  --section post-data   --encoding utf8 --host 127.1.1 --port 5432 --username postgres CGIFCH  > $CGIFCH_SCHEMA

puis

# recharge et creation des tables et leurs definitions 
        pg_restore      --host localhost --port 5432 --username postgres   --dbname CGIFCH   $CGIFCH_SCHEMA
# recharge les données
        pg_restore   -a --host localhost --port 5432 --username postgres   --dbname CGIFCH   $CGIFCH_DATA

la catastrophe plus de schéma ????

j'ai essayé à la main

-- TABLE: "FC0CLI"
-- COPY "FC0CLI"  FROM '/home/soleil/AS400/DEF_SQL/FC0CLI.csv' WITH DELIMITER '|' QUOTE '}' csv ENCODING 'WINDOWS-1250';
-- DROP TABLE "FC0CLI"    ;
CREATE TABLE public."FC0CLI"
(
"C0CDEP"    character(3  ), -- CODE DEPARTEMENT
"C0NCLI"    numeric(6,00), -- N° CLIENT
CONSTRAINT "FC0CLI_pkey"   PRIMARY KEY ("C0NCLI")
)
WITH (
  OIDS=FALSE
);
ALTER TABLE public."FC0CLI"
  OWNER TO postgres;

COMMENT ON TABLE public."FC0CLI"
IS 'CLIENT FACTURATION';
COMMENT ON COLUMN "FC0CLI"."C0CDEP"         IS 'CODE DEPARTEMENT';
COMMENT ON COLUMN "FC0CLI"."C0NCLI"         IS 'N° CLIENT';


strictement identique au pg_restore pas de schéma à l'affichage

pour avoir votre schéma il faut passer par la création de colonne ????

 
par contre en utilisant la création de colonne  l'affichage fonction et vous obtenez un script   mais faux  exemple   
   
COCDEP      character[]  length 3  info CODE DEPARTEMENT     donne  le script   "C0CDEP"    character(3  )[] ...... le script imprenable en sql si vous le conserver

résultat des améliorations mais aussi des beug supplémentaire  !!!!  c'était pourtant pas difficile de récupérer les définitions et de les ré-afficher



je lâche l'affaire et reviens en 9.5.6 avec pgadmin III   je stop l'évolution     je testerait maintenant à la fin de l'année et encore .....     Je n'avais rien mis en prod  je voulais être sur de la maintenance qui pour est aussi important que la création.  en plus pas de .deb ni ppa  alors ....

je crois que je vais me faire un outils médian qui permet de construire des tables....  et d'avoir un référentiel    alors je reprendrais   le cours  de Postgresql .   trop de souci pour géré l'architecture d'une base de donnée .   @bientôt

#10 Re : pgAdmin4 » partage sur pgAdmin4 » 14/02/2017 20:12:53

la version 9.6.2 idem  ce n'est pas postgresql qui ne fonctionne pas
mais pgadmin4 qui n'est pas au rendez-vous

#11 Re : pgAdmin4 » suite de la discution pgAmind4 et fork pgAdmin3 » 14/02/2017 20:10:44

bonjour ,
la version 1.22.2
effectivement la version la version 1.22.2 fonctionne
mais elle creer a chaque demande une 9.5 par defaut


j'ai mis a jour la version 9.6.2  postgresql lui ne présente aucun problème


rappel pgsql 9.6.2 pgadmin4 1.2


pour la version pgadmin4
toujours les mêmes problèmes avec pgadmin4 

la maintenance ne fonctionne pasbeug style (creation job failed)  (sauf si vous ête en admin sudo)
 


mais ne remonte aucun résultat

pour que cela fonctionne ne pas exécuter avec l'onglet maintenance

solution  avec le script  passer par l'interface editor sql  idem que pour create table si dessus

VACUUM FULL VERBOSE  ;(full table)
VACUUM FULL VERBOSE  votre_table ;
pgsql 9.6 vacuum

dommage ça rends le pgadmin un peu étriqué     

une solution (avec dbeaver      logiciel communautaire )

j'ai essayer divers solutions pour le moment rien ne remplace pgadminIII et la version 4 n'est pas terminé . au 15/02/2017
d'autre part je crains la compatibilité ou dut moins je voudrais que ça colle 100% hors les base accès Universelle c'est du 95%  exemple charactere(3) devient bpchar(3) et cela me chagrine car je me dit que la représentativité n'est pas exacte .... ou 90% dans certains logiciels exemple lors de la création de tables.

je suis tatillon avec la BD car j'étais architecte depuis 1980 alors comme je suis un papy j'ai des exigences dut à la responsabilité tant en maintenance quand faisabilité ainsi que fiabilité.
j'ai fais une étude de plus d'un an pour choisir une BD autre que DB2 AS400  et mon choix c'est porté sur postgresql qui pour moi représente un gage de respect des normes SQL et de sa fiabilité ainsi que sa portabilité.

#12 pgAdmin4 » suite de la discution pgAmind4 et fork pgAdmin3 » 01/02/2017 16:45:25

jplaroche
Réponses : 8

lors d'une demande d'ouverture de de sujet , l'Admin m'a suggéré (plutôt dit de regarder avec prudence) le fork pgAdmin3 valide pour pgSQL 9.6.x

a) oui cela existe bien
b) avec bigsql mais pour windows
c) il y a un gti a disposition ...


enfin de compte la demande du Fork n'est pas appuyé par l'équipe de postgresql , mais accepté si il reste dans la licence.
Quand ont regarde l'ensemble des obligations pour l'install , il faut remonter (wxwidgets  et gtk )a 2.8 , pytnon ancienne version ... ect...,
on comprends mieux pourquoi ils ont lâché l'affaire , et pour moi le retro pédalage est trop coûteux.

dans un mail de conversation entre l'équipe du fork et postgresql ,  postgresql dit qu'il feront le nécessaire pour amélioré et plus, et ne soutiendront pas le fork .

alors à quand un ppa pgadmin4  ....


@bientôt de vous lire

ps(je ne vous donne pas l'adresse du git  croyez-moi trop de problèmes malgré que le GUI est encore un peu plus avancé a ce jour 2017-02-01)

#13 pgAdmin4 » partage sur pgAdmin4 » 01/02/2017 01:47:11

jplaroche
Réponses : 2

bonjour , comme certain j'ai quand même voulue expérimenter et je vous fait partager mon expérience.
le contexte:
Migration de DB2 vers PostgreSQL :
j'ai pris la version 9.6.1 sur le site de entreprise de PostgreSQL (c'est plus simple pour faire mon développement )

j'ai généré les source adéquate à l'identique de pgAdmin3  impossible d'importé avec l'outil, mais avec querytool (SQL)  j'ai pu créé mes tables .
quand au données j'ai fait de la même manière

ex:


-- TABLE: "FC0CLI"
-- COPY "FC0CLI"  FROM '/home/soleil/AS400/DEF_SQL/FC0CLI.csv' WITH DELIMITER '|' QUOTE '}' csv ENCODING 'WINDOWS-1250';
-- DROP TABLE "FC0CLI"    ;
CREATE TABLE "FC0CLI"
(
"C0CDEP"    character(3  ), -- CODE DEPARTEMENT
"C0CFAC"    character(1  ), -- CODE FACTURATION
"C0CJRD"    character(4  ), -- CODE FORME JURIDIQUE
"C0CPAY"    character(3  ), -- CODE PAYS
"C0CRGI"    numeric(2,00), -- CODE REGION ECONOMIQ
"C0CRGL"    numeric(3,00), -- CODE REGLEMENT
"C0CST1"    numeric(2,00), -- CODE REGION  STAT.
"C0CST2"    numeric(2,00), -- CODE SECTEUR STAT.
"C0CTRS"    numeric(2,00), -- CODE TRESORERIE
"C0CTTV"    character(1  ), -- CODE TVA EXO EXPORT
"C0999E"    date, -- DATE DE CREATION ENR
"C0999M"    date, -- DATE DE MODIFCATION
"C0NARR"    numeric(3,00), -- N. ARRONDISSEMENT
"C0NCLI"    numeric(6,00), -- N° CLIENT
"C0NPTT"    numeric(5,00), -- N. CODE POSTAL
"C0NESC"    numeric(2,01), -- N. ESCOMPTE
"C0SHS"     numeric(1,00), -- 0/1  N=0 O=1 H.SERVC
"C0SLCR"    character(1  ), -- O/N  L.C.R.
"C0SMLG"    character(1  ), -- O/N MAILING
"C0TRPL"    character(1  ), -- TYPE BLOCAGE RAPPEL
"C0ZPTT"    character(10 ), -- Z. CODE POSTAL
"C0ZCTC"    character(30 ), -- PERSONNE A CONTACTER
"C0ZDST"    character(30 ), -- PERSONNE DESTINATAIR
"C0ZNOM"    character(30 ), -- NOM / RAISON SOCIAL
"C0ZOBS"    character(30 ), -- OBSERVATIONS
"C0ZTVA"    character(15 ), -- REFERENCE TVA
"C0ZRU1"    character(30 ), -- NOM / RUE1
"C0ZRU2"    character(30 ), -- SUITE NOM / RUE1
"C0ZTL1"    character(15 ), -- N. TEL. PERS. A CONT
"C0ZTLX"    character(15 ), -- N. TELEX / TELECOPIE
"C0ZVIL"    character(25 ), -- VILLE
CONSTRAINT "FC0CLI_pkey"   PRIMARY KEY ("C0NCLI")
)
WITH (
  OIDS=FALSE
);
ALTER TABLE "FC0CLI"
  OWNER TO postgres;
COMMENT ON TABLE "FC0CLI"
IS 'CLIENT FACTURATION';
COMMENT ON COLUMN "FC0CLI"."C0CDEP"         IS 'CODE DEPARTEMENT';
COMMENT ON COLUMN "FC0CLI"."C0CFAC"         IS 'CODE FACTURATION';
COMMENT ON COLUMN "FC0CLI"."C0CJRD"         IS 'CODE FORME JURIDIQUE';
COMMENT ON COLUMN "FC0CLI"."C0CPAY"         IS 'CODE PAYS';
COMMENT ON COLUMN "FC0CLI"."C0CRGI"         IS 'CODE REGION ECONOMIQ';
COMMENT ON COLUMN "FC0CLI"."C0CRGL"         IS 'CODE REGLEMENT';
COMMENT ON COLUMN "FC0CLI"."C0CST1"         IS 'CODE REGION  STAT.';
COMMENT ON COLUMN "FC0CLI"."C0CST2"         IS 'CODE SECTEUR STAT.';
COMMENT ON COLUMN "FC0CLI"."C0CTRS"         IS 'CODE TRESORERIE';
COMMENT ON COLUMN "FC0CLI"."C0CTTV"         IS 'CODE TVA EXO EXPORT';
COMMENT ON COLUMN "FC0CLI"."C0999E"         IS 'DATE DE CREATION ENR';
COMMENT ON COLUMN "FC0CLI"."C0999M"         IS 'DATE DE MODIFCATION';
COMMENT ON COLUMN "FC0CLI"."C0NARR"         IS 'N. ARRONDISSEMENT';
COMMENT ON COLUMN "FC0CLI"."C0NCLI"         IS 'N° CLIENT';
COMMENT ON COLUMN "FC0CLI"."C0NPTT"         IS 'N. CODE POSTAL';
COMMENT ON COLUMN "FC0CLI"."C0NESC"         IS 'N. ESCOMPTE';
COMMENT ON COLUMN "FC0CLI"."C0SHS"          IS '0/1  N=0 O=1 H.SERVC';
COMMENT ON COLUMN "FC0CLI"."C0SLCR"         IS 'O/N  L.C.R.';
COMMENT ON COLUMN "FC0CLI"."C0SMLG"         IS 'O/N MAILING';
COMMENT ON COLUMN "FC0CLI"."C0TRPL"         IS 'TYPE BLOCAGE RAPPEL';
COMMENT ON COLUMN "FC0CLI"."C0ZPTT"         IS 'Z. CODE POSTAL';
COMMENT ON COLUMN "FC0CLI"."C0ZCTC"         IS 'PERSONNE A CONTACTER';
COMMENT ON COLUMN "FC0CLI"."C0ZDST"         IS 'PERSONNE DESTINATAIR';
COMMENT ON COLUMN "FC0CLI"."C0ZNOM"         IS 'NOM / RAISON SOCIAL';
COMMENT ON COLUMN "FC0CLI"."C0ZOBS"         IS 'OBSERVATIONS';
COMMENT ON COLUMN "FC0CLI"."C0ZTVA"         IS 'REFERENCE TVA';
COMMENT ON COLUMN "FC0CLI"."C0ZRU1"         IS 'NOM / RUE1';
COMMENT ON COLUMN "FC0CLI"."C0ZRU2"         IS 'SUITE NOM / RUE1';
COMMENT ON COLUMN "FC0CLI"."C0ZTL1"         IS 'N. TEL. PERS. A CONT';
COMMENT ON COLUMN "FC0CLI"."C0ZTLX"         IS 'N. TELEX / TELECOPIE';
COMMENT ON COLUMN "FC0CLI"."C0ZVIL"         IS 'VILLE';

résultats:


-- Table: public."FC0CLI"

-- DROP TABLE public."FC0CLI";

CREATE TABLE public."FC0CLI"
(
    "C0CDEP" character(3) COLLATE pg_catalog."default",
    "C0CFAC" character(1) COLLATE pg_catalog."default",
    "C0CJRD" character(4) COLLATE pg_catalog."default",
    "C0CPAY" character(3) COLLATE pg_catalog."default",
    "C0CRGI" numeric(2),
    "C0CRGL" numeric(3),
    "C0CST1" numeric(2),
    "C0CST2" numeric(2),
    "C0CTRS" numeric(2),
    "C0CTTV" character(1) COLLATE pg_catalog."default",
    "C0999E" date,
    "C0999M" date,
    "C0NARR" numeric(3),
    "C0NCLI" numeric(6) NOT NULL,
    "C0NPTT" numeric(5),
    "C0NESC" numeric(2, 1),
    "C0SHS" numeric(1),
    "C0SLCR" character(1) COLLATE pg_catalog."default",
    "C0SMLG" character(1) COLLATE pg_catalog."default",
    "C0TRPL" character(1) COLLATE pg_catalog."default",
    "C0ZPTT" character(10) COLLATE pg_catalog."default",
    "C0ZCTC" character(30) COLLATE pg_catalog."default",
    "C0ZDST" character(30) COLLATE pg_catalog."default",
    "C0ZNOM" character(30) COLLATE pg_catalog."default",
    "C0ZOBS" character(30) COLLATE pg_catalog."default",
    "C0ZTVA" character(15) COLLATE pg_catalog."default",
    "C0ZRU1" character(30) COLLATE pg_catalog."default",
    "C0ZRU2" character(30) COLLATE pg_catalog."default",
    "C0ZTL1" character(15) COLLATE pg_catalog."default",
    "C0ZTLX" character(15) COLLATE pg_catalog."default",
    "C0ZVIL" character(25) COLLATE pg_catalog."default",
    CONSTRAINT "FC0CLI_pkey" PRIMARY KEY ("C0NCLI")
)
WITH (
    OIDS = FALSE
)
TABLESPACE pg_default;

ALTER TABLE public."FC0CLI"
    OWNER to postgres;
COMMENT ON TABLE public."FC0CLI"
    IS 'CLIENT FACTURATION';

COMMENT ON COLUMN public."FC0CLI"."C0CDEP"
    IS 'CODE DEPARTEMENT';

COMMENT ON COLUMN public."FC0CLI"."C0CFAC"
    IS 'CODE FACTURATION';

COMMENT ON COLUMN public."FC0CLI"."C0CJRD"
    IS 'CODE FORME JURIDIQUE';

COMMENT ON COLUMN public."FC0CLI"."C0CPAY"
    IS 'CODE PAYS';

COMMENT ON COLUMN public."FC0CLI"."C0CRGI"
    IS 'CODE REGION ECONOMIQ';

COMMENT ON COLUMN public."FC0CLI"."C0CRGL"
    IS 'CODE REGLEMENT';

COMMENT ON COLUMN public."FC0CLI"."C0CST1"
    IS 'CODE REGION  STAT.';

COMMENT ON COLUMN public."FC0CLI"."C0CST2"
    IS 'CODE SECTEUR STAT.';

COMMENT ON COLUMN public."FC0CLI"."C0CTRS"
    IS 'CODE TRESORERIE';

COMMENT ON COLUMN public."FC0CLI"."C0CTTV"
    IS 'CODE TVA EXO EXPORT';

COMMENT ON COLUMN public."FC0CLI"."C0999E"
    IS 'DATE DE CREATION ENR';

COMMENT ON COLUMN public."FC0CLI"."C0999M"
    IS 'DATE DE MODIFCATION';

COMMENT ON COLUMN public."FC0CLI"."C0NARR"
    IS 'N. ARRONDISSEMENT';

COMMENT ON COLUMN public."FC0CLI"."C0NCLI"
    IS 'N° CLIENT';

COMMENT ON COLUMN public."FC0CLI"."C0NPTT"
    IS 'N. CODE POSTAL';

COMMENT ON COLUMN public."FC0CLI"."C0NESC"
    IS 'N. ESCOMPTE';

COMMENT ON COLUMN public."FC0CLI"."C0SHS"
    IS '0/1  N=0 O=1 H.SERVC';

COMMENT ON COLUMN public."FC0CLI"."C0SLCR"
    IS 'O/N  L.C.R.';

COMMENT ON COLUMN public."FC0CLI"."C0SMLG"
    IS 'O/N MAILING';

COMMENT ON COLUMN public."FC0CLI"."C0TRPL"
    IS 'TYPE BLOCAGE RAPPEL';

COMMENT ON COLUMN public."FC0CLI"."C0ZPTT"
    IS 'Z. CODE POSTAL';

COMMENT ON COLUMN public."FC0CLI"."C0ZCTC"
    IS 'PERSONNE A CONTACTER';

COMMENT ON COLUMN public."FC0CLI"."C0ZDST"
    IS 'PERSONNE DESTINATAIR';

COMMENT ON COLUMN public."FC0CLI"."C0ZNOM"
    IS 'NOM / RAISON SOCIAL';

COMMENT ON COLUMN public."FC0CLI"."C0ZOBS"
    IS 'OBSERVATIONS';

COMMENT ON COLUMN public."FC0CLI"."C0ZTVA"
    IS 'REFERENCE TVA';

COMMENT ON COLUMN public."FC0CLI"."C0ZRU1"
    IS 'NOM / RUE1';

COMMENT ON COLUMN public."FC0CLI"."C0ZRU2"
    IS 'SUITE NOM / RUE1';

COMMENT ON COLUMN public."FC0CLI"."C0ZTL1"
    IS 'N. TEL. PERS. A CONT';

COMMENT ON COLUMN public."FC0CLI"."C0ZTLX"
    IS 'N. TELEX / TELECOPIE';

COMMENT ON COLUMN public."FC0CLI"."C0ZVIL"
    IS 'VILLE';

comme vous pouvez le constater
les commentaires disparaissent sur la définition des zones et la disposition des COMMENT est moins lisible   l'onglet SQL lors de la création d'une table reste non accessible.

d'ailleurs si vous avez migré et fait Dump de votre base et Restore cela est identique


maintenance:
pas de réponse , il y a bien une soumission mais rien ne ce passe . ou je suppose qu'il n'y a pas de problème puisque aucun message  n’apparaît.

quand au reste cela fonctionne correctement .

AVEZ-VOUS des remarques à partager svp
si ce n'est qu'il y a un Fork de pgAdmin3 pour 9.6 (merci a l'admin qui m'en a fait part)

bien pour terminer je ne voudrais pas que l'on pense que le travaille énorme qui a été fait pour rendre pdAdmin4 multiplate-forme et indépendant est incohérent, mais comme tout projet surtout ceux qui s'adresse au informaticien est difficile a réalisé surtout qu'un programme était déjà performant (pgAdim3) .
Il manque quelques truc pour égalé mais ça vas venir je ne peux penser autrement.

@bientôt de vous lire.

#15 Site PostgreSQL.fr » pgAdmin4 » 30/01/2017 10:29:54

jplaroche
Réponses : 2

bonjour, j'aimerais bien qu'il y ait une rubrique pgAdmin4,  afin de partager nos expériences et avoir un retour sur le produit livré avec la version 9.6...

bien que ce ne soit pas le lieux , des différences importantes font que l'on aborde pas les choses de la même manière.
cela peut en dérouter plus d'un , d'autre part cela permettrait de faire remonter certaine demande d'amélioration ou de non fonctionnement.
j'ai pour moi même eu des difficultés pour l'importation et la nouvelle présentation des schémas avec moins de commentaire et plus diffus font que je pense à me faire un programme pour me représenté la structure de fichiers d'une manière plus cohérente visuellement en mode texte ou semi-graphique.

comme vous le voyez il y a de nombreux sujet dont ont aimeraient bien partager dans une rubrique tel que pgadmin3  qui d'ailleurs est incompatible avec la nouvelle version.

en attendant une réponse favorable je remercie l'ensemble des acteurs impliqués pour la maintenance du forum.

@bientôt

#16 Re : Sécurité » sauvgarde des données en sql » 13/07/2015 01:07:43

bonjour


un truc qui en depatrouilera plus d'un



sauvegarde


#!/bin/bash
#    
# cp based backup script.
#
echo "bonjour"  

if [! -d "/media/soleil/6528-D95D/SAUVEGARDE" ] 
then  
echo "Branche le lecteur"
exit  1
fi 

echo "bonjour"


	echo -n "Voulez-SAUVEGARDER Y/N : "
	read ouinon
	if [ "$ouinon" = "y" ] || [ "$ouinon" = "Y" ]
		then

		cd /media/soleil/6528-D95D/SAUVEGARDE/ 

 		dat=$(date +%Y%m%d)  
    

		echo "sauvegarde PostgreSQL  CGIFCH"  

		CGIFCH_DATA="CGIFCH_DATA_"$dat".backup" 
		CGIFCH_SCHEMA="CGIFCH_SCHEMA_"$dat".backup" 
 
		echo -n "File PostgreSQL ---  A Sauvegarder :"
		echo "$CGIFCH_DATA"
		echo -n "File PostgreSQL ---  A Sauvegarder :"
		echo "$CGIFCH_SCHEMA"
# DATA
		 pg_dump     --format custom -a 	      			       --encoding utf8 --host 127.1.1 --port 5432 --username postgres CGIFCH > $CGIFCH_DATA
# SCHEMA
		 pg_dump     --format custom --section pre-data  --section post-data   --encoding utf8 --host 127.1.1 --port 5432 --username postgres CGIFCH > $CGIFCH_SCHEMA 
 

		echo "sauvegarde Repertoire Terminer" 

	elif [ "$ouinon" = "n" ] || [ "$ouinon"= "N" ] 
		then
    		echo "Ok, bye!"
	else
    	
		echo "Il faut taper Y ou N!! Pas $ouinon" 

	fi

exit 0

========================================

smile:):)

restore

#!/bin/bash
#    
# cp based backup script.
#
#

if [! -d "/media/soleil/6528-D95D/SAUVEGARDE/" ]
then
echo "Branche le lecteur"
exit 1
fi 

	echo "recuperation RESTAURE BDsql: "
	echo -n "Entrez: sa date de sauvegarde : "
	read file

	CGIFCH_SCHEMA="CGIFCH_SCHEMA_"$file".backup" 
	CGIFCH_DATA="CGIFCH_DATA_"$file".backup" 
 
 	echo -n "File PostgreSQL ---  A Restaurer :"
	echo "$CGIFCH_SCHEMA"

	echo -n "File PostgreSQL ---  A Restaurer :"
	echo "$CGIFCH_DATA"

if [ -e "$CGIFCH_DATA" ]
	then

	echo -n "Voulez-Restaurer Y/N : "
	read ouinon
	if [ "$ouinon" = "y" ] || [ "$ouinon" = "Y" ] 
		then

cd /media/soleil/6528-D95D/SAUVEGARDE/ 

# recharge et creation des tables et leurs definitions
		pg_restore      --host 127.1.1 --port 5432 --username postgres   --dbname  CGIFCH   $CGIFCH_SCHEMA
# recharge les données 
		pg_restore   -a --host 127.1.1 --port 5432 --username postgres   --dbname CGIFCH   $CGIFCH_DATA

		echo  "restaurer controler avec un vacum general "

	elif [ "$ouinon" = "n" ] || [ "$ouinon" = "N" ]
		then
    		echo "Ok, bye! "	
	else
    		echo "Il faut taper Y ou N!! Pas $ouinon"
	fi
else
        echo "Le fichier n'existe pas, du moins n'est pas dans le répertoire d'exécution du script"
fi
exit 0

#17 Re : Installation » [résolu] installation Posgresql apache2 (je ne trouve pas les modules) » 08/06/2015 19:33:06

bien autan pour moi,
il suffit de rajouter
une ligne par exemple (linux) dans le fichier /etc/apache2/envvars
export LD_LIBRARY_PATH=/opt/PostgreSQL/9.4/lib/

#18 Installation » [résolu] installation Posgresql apache2 (je ne trouve pas les modules) » 08/06/2015 13:43:31

jplaroche
Réponses : 1

bonjour,
mes programmes avec Postgresql fonctionnent, maintenant je voudrais faire du CGI  mais avec apache2 j'ai des erreurs portant ...

/home/soleil/WWW/pgmdev/R00USR.cgi: error while loading shared libraries: libpgtypes.so.3: cannot open shared object file: No such file or directory

je pense qu'il faut faire a2enmod de tous les modules Posqgresql mais  dois je mettre le chemin

ex: a2enomd  /opt/PostgreSQL/9.4/lib/libpgtypes.so.3   (ça ne marche pas)
(j'ai installé postgresql-9.4.1-3-linux-x64.run   (Ubuntu))

merci.

#19 Re : C et C++ » RESOLU descripteur schéma catalog ne fonctionne que sur pgadmin » 06/10/2014 22:19:40

j'ai trouvé

a) je maintiens que la fonction ne fonctionne pas tel que décrite sous pgadmin et ecpg dans la doc.



b) la réponse  pour que les deux fonctionne

EXEC SQL AT pg_RTABLE DECLARE pg_RTABLE_cur CURSOR FOR
select
     cl.table_catalog
    ,cl.table_name
    ,d.description
    ,cl.column_name
    ,e.description
    ,cl.ORDINAL_POSITION
    ,cl.DATA_TYPE
    ,coalesce(cl.CHARACTER_MAXIMUM_LENGTH,0)
    ,coalesce(cl.NUMERIC_PRECISION,0)
    ,coalesce(cl.NUMERIC_SCALE,0)




from
    information_schema.columns cl ,
    pg_catalog.pg_attribute a
    inner join pg_catalog.pg_class c on a.attrelid = c.oid,
    pg_catalog.pg_description d,
    pg_catalog.pg_description e
where
    cl.table_catalog =:nzdbname
    and c.relname =:nzfile
    and a.attnum > 0
    and a.attisdropped is false
    and pg_catalog.pg_table_is_visible(c.oid)
    and cl.table_name  = c.relname
    and cl.ORDINAL_POSITION = a.attnum
    and d.objoid = a.attrelid
    and d.objsubid = 0
    and e.objoid = a.attrelid
    and e.objsubid = a.attnum
order by a.attnum;

EXEC SQL  AT pg_RTABLE  OPEN pg_RTABLE_cur ;




EXEC SQL  AT pg_RTABLE  FETCH pg_RTABLE_cur   INTO   :nzSERVER, :nzTABLE, :nzTEXT , :nCNAME, :nCTEXT, :nCPOS, :nCTYP, :nCLEN, :nCDEC, :nCVIR ;

fprintf(stderr, "\n db_read_RTABLE \n  zSERVER: %s \n  zTABLE: %s \n zTEXT: %s \n zNAME: %s \n  CTEXT: %s \n CPOS: %d \n CTYP: %s \n CLEN: %d \n CDEC: %d \n  CVIR: %d \n ",
nzSERVER, nzTABLE, nzTEXT, nCNAME, nCTEXT, nCPOS, nCTYP, nCLEN, nCDEC, nCVIR);


là ça fonctionne

je souhaite que cela serve pour les autres

pour info


EXEC SQL BEGIN DECLARE SECTION;

/* $FIELD  */

char*     nzdbname   ;      /* connection user name */
char*     nzfile     ;           /* connection user name */
char*     nzSERVER   ;
char*     nzTABLE    ;
char*     nCNAME     ;
int       nCPOS      ;          /* Position */
char*     nCTYP      ;
int       nCLEN      ;          /* Longueur zone alpha */
int       nCDEC      ;         /* ENTIER */
int       nCVIR      ;          /* NBR CHIFFRE APRES VIRGULE */
char*     nzTEXT     ;       /* texte Table */
char*     nCTEXT     ;      /* texte de la Colonne */
int       nCCOL      ;         /* Nbr colonne */
int       nCKEY      ;         /* Nbr key  */

EXEC SQL END DECLARE SECTION;

attention ne pas oublier
    ,coalesce(cl.CHARACTER_MAXIMUM_LENGTH,0)
    ,coalesce(cl.NUMERIC_PRECISION,0)
    ,coalesce(cl.NUMERIC_SCALE,0)
sino error (les valeurs sont NULL donc les forcer a zeros )

pour donner ce résultat:

<?xml version="1.0" encoding="UTF-8"?>
<FILE>
    <ENTETE>
        <VERSION>20170217144517</VERSION>
        <SERVEUR>CGIFCH</SERVEUR>
        <TABLE>FC0CLI</TABLE>
        <TEXT>CLIENT FACTURATION</TEXT>
        <NBRCOL>031</NBRCOL>
        <NBRKEY>001</NBRKEY>
    </ENTETE>
    <ZONED>
        <row NAME="C0CDEP" TEXT="CODE DEPARTEMENT" ORD="1" TYP="character" LEN="3" ENT="0" DEC="0" LNG="3"/>
        <row NAME="C0CFAC" TEXT="CODE FACTURATION" ORD="2" TYP="character" LEN="1" ENT="0" DEC="0" LNG="1"/>
        <row NAME="C0CJRD" TEXT="CODE FORME JURIDIQUE" ORD="3" TYP="character" LEN="4" ENT="0" DEC="0" LNG="4"/>
        <row NAME="C0CPAY" TEXT="CODE PAYS" ORD="4" TYP="character" LEN="3" ENT="0" DEC="0" LNG="3"/>
        <row NAME="C0CRGI" TEXT="CODE REGION ECONOMIQ" ORD="5" TYP="numeric" LEN="0" ENT="2" DEC="0" LNG="3"/>
        <row NAME="C0CRGL" TEXT="CODE REGLEMENT" ORD="6" TYP="numeric" LEN="0" ENT="3" DEC="0" LNG="4"/>
        <row NAME="C0CST1" TEXT="CODE REGION  STAT." ORD="7" TYP="numeric" LEN="0" ENT="2" DEC="0" LNG="3"/>
        <row NAME="C0CST2" TEXT="CODE SECTEUR STAT." ORD="8" TYP="numeric" LEN="0" ENT="2" DEC="0" LNG="3"/>
        <row NAME="C0CTRS" TEXT="CODE TRESORERIE" ORD="9" TYP="numeric" LEN="0" ENT="2" DEC="0" LNG="3"/>
        <row NAME="C0CTTV" TEXT="CODE TVA EXO EXPORT" ORD="10" TYP="character" LEN="1" ENT="0" DEC="0" LNG="1"/>
        <row NAME="C0999E" TEXT="DATE DE CREATION ENR" ORD="11" TYP="date" ENT="0" DEC="0" LNG="8" LEN="8"/>
        <row NAME="C0999M" TEXT="DATE DE MODIFCATION" ORD="12" TYP="date" ENT="0" DEC="0" LNG="8" LEN="8"/>
        <row NAME="C0NARR" TEXT="N. ARRONDISSEMENT" ORD="13" TYP="numeric" LEN="0" ENT="3" DEC="0" LNG="4"/>
        <row NAME="C0NCLI" TEXT="N° CLIENT" ORD="14" TYP="numeric" LEN="0" ENT="6" DEC="0" LNG="7"/>
        <row NAME="C0NPTT" TEXT="N. CODE POSTAL" ORD="15" TYP="numeric" LEN="0" ENT="5" DEC="0" LNG="6"/>
        <row NAME="C0NESC" TEXT="N. ESCOMPTE" ORD="16" TYP="numeric" LEN="0" ENT="2" DEC="1" LNG="3"/>
        <row NAME="C0SHS" TEXT="0/1  N=0 O=1 H.SERVICE" ORD="17" TYP="numeric" LEN="0" ENT="1" DEC="0" LNG="2"/>
        <row NAME="C0SLCR" TEXT="O/N  L.C.R." ORD="18" TYP="character" LEN="1" ENT="0" DEC="0" LNG="1"/>
        <row NAME="C0SMLG" TEXT="O/N MAILING" ORD="19" TYP="character" LEN="1" ENT="0" DEC="0" LNG="1"/>
        <row NAME="C0TRPL" TEXT="TYPE BLOCAGE RAPPEL" ORD="20" TYP="character" LEN="1" ENT="0" DEC="0" LNG="1"/>
        <row NAME="C0ZPTT" TEXT="Z. CODE POSTAL" ORD="21" TYP="character" LEN="10" ENT="0" DEC="0" LNG="10"/>
        <row NAME="C0ZCTC" TEXT="PERSONNE A CONTACTER" ORD="22" TYP="character" LEN="30" ENT="0" DEC="0" LNG="30"/>
        <row NAME="C0ZDST" TEXT="PERSONNE DESTINATAIR" ORD="23" TYP="character" LEN="30" ENT="0" DEC="0" LNG="30"/>
        <row NAME="C0ZNOM" TEXT="NOM / RAISON SOCIAL" ORD="24" TYP="character" LEN="30" ENT="0" DEC="0" LNG="30"/>
        <row NAME="C0ZOBS" TEXT="OBSERVATIONS" ORD="25" TYP="character" LEN="30" ENT="0" DEC="0" LNG="30"/>
        <row NAME="C0ZTVA" TEXT="REFERENCE TVA" ORD="26" TYP="character" LEN="15" ENT="0" DEC="0" LNG="15"/>
        <row NAME="C0ZRU1" TEXT="NOM / RUE1" ORD="27" TYP="character" LEN="30" ENT="0" DEC="0" LNG="30"/>
        <row NAME="C0ZRU2" TEXT="SUITE NOM / RUE1" ORD="28" TYP="character" LEN="30" ENT="0" DEC="0" LNG="30"/>
        <row NAME="C0ZTL1" TEXT="N. TEL. PERS. A CONT" ORD="29" TYP="character" LEN="15" ENT="0" DEC="0" LNG="15"/>
        <row NAME="C0ZTLX" TEXT="N. TELEX / TELECOPIE" ORD="30" TYP="character" LEN="15" ENT="0" DEC="0" LNG="15"/>
        <row NAME="C0ZVIL" TEXT="VILLE" ORD="31" TYP="character" LEN="25" ENT="0" DEC="0" LNG="25"/>
    </ZONED>
    <ZONEK>
        <row NAME="C0NCLI" ORD="1" TYP="numeric" LEN="0" ENT="6" DEC="0" LNG="7"/>
    </ZONEK>
</FILE>

#20 Re : C et C++ » RESOLU descripteur schéma catalog ne fonctionne que sur pgadmin » 06/10/2014 19:44:31

gleu a écrit :

La requête fonctionne avec pgAdmin et psql. Donc le problème vient de votre programme.

merci alors aidé moi ???

EXEC SQL BEGIN DECLARE SECTION;

/* $FIELD  */

char*     nzdbname   ;      /* connection user name */
char*     nzfile     ;    /* connection user name */
char*     nzSERVER   ;
char*     nzTABLE    ;
char*     nCNAME     ;
int       nCPOS      ;   /* Position */
char*     nCTYP      ;
int       nCLEN      ;   /* Longueur zone alpha */
int       nCDEC      ;   /* ENTIER */
int       nCVIR      ;   /* NBR CHIFFRE APRES VIRGULE */
char*     nzTEXT     ;   /* texte Table */
char*     nCTEXT     ;   /* texte de la Colonne */

int       nCOL       ;   /* n° Col index description */

EXEC SQL END DECLARE SECTION;

void db_read_RTABLE()
{
   nCPOS    = 0;
   nCDEC    = 0;
   nCLEN    = 0;
   nCVIR    = 0;
nzSERVER  =   (char*) malloc( 256   * sizeof(char*));
nzTABLE  =   (char*) malloc( 256   * sizeof(char*));
nCNAME  =   (char*) malloc( 256   * sizeof(char*));
nCTYP  =   (char*) malloc( 256   * sizeof(char*));
nzTEXT  =   (char*) malloc( 256   * sizeof(char*));
nCTEXT  =   (char*) malloc( 256   * sizeof(char*));


EXEC SQL AT pg_RTABLE DECLARE pg_RTABLE_cur CURSOR FOR
SELECT
cl.table_catalog,cl.table_name,
cl.column_name,cl.ORDINAL_POSITION,cl.DATA_TYPE,cl.CHARACTER_MAXIMUM_LENGTH,cl.NUMERIC_PRECISION,cl.NUMERIC_SCALE
,(select pg_catalog.obj_description( oid) from pg_catalog.pg_class c where c.relname=cl.table_name) as table_comment

,(select pg_catalog.col_description( oid,cl.ORDINAL_POSITION::int) from pg_catalog.pg_class cx where cx.relname=cl.table_name) as column_comment
FROM information_schema.columns cl
WHERE cl.table_catalog =:nzdbname  and cl.table_name =:nzfile
ORDER BY 4 ;

EXEC SQL  AT pg_RTABLE  OPEN pg_RTABLE_cur ;


EXEC SQL WHENEVER SQLERROR CONTINUE ;
EXEC  SQL WHENEVER NOT FOUND DO BREAK;
while (1)
{

EXEC SQL  AT pg_RTABLE  FETCH pg_RTABLE_cur   INTO :nzSERVER, :nzTABLE, :nCNAME, :nCPOS, :nCTYP, :nCLEN, :nCDEC, :nCVIR , :nzTEXT, :nCTEXT;

fprintf(stderr, "\n db_read_RTABLE \n  zSERVER: %s \n  zTABLE: %s \n zNAME: %s \n CPOS: %d \n CTYP: %s \n CLEN: %d \n CDEC: %d \n  CVIR: %d \n zTEXT: %s \n CTEXT: %s \n",
nzSERVER, nzTABLE, nCNAME, nCPOS, nCTYP, nCLEN, nCDEC, nCVIR, nzTEXT, nCTEXT);

return;
};

}


resultat

db_read_RTABLE
  zSERVER: CGIFCH
  zTABLE: FTCPAY
zNAME: TCCPAY
CPOS: 1
CTYP: character
CLEN: 3
CDEC: 0
  CVIR: 0
zTEXT: 
CTEXT: 


donc pas de recuperation des comment alors que sous pgadmin cela fonctionne

ok c'est le programme mais y a t-il quelqu'un qui peux me dire OU !!!!!!!!!!!!!!!

#21 PL/pgSQL » est-il possible d'utiliser pl/pgsql avec c++ » 03/10/2014 12:58:40

jplaroche
Réponses : 1

bonjour,
http://forums.postgresql.fr/viewtopic.php?id=3323

ce script ne marche pas avec ecpg

si je fais cela avec un script compile pl/pgsql  est ce que cela vas marché et peut-on m'aider pour mon premier script  exemple (svp avec paramètre entrer et sortie ) merci

#22 Re : C et C++ » RESOLU descripteur schéma catalog ne fonctionne que sur pgadmin » 02/10/2014 13:28:25

ps je suis en accès full en développement interne en prise direct sous linux

char *prod       = "unix:postgresql://localhost:5432/CGIFCH";

la connexion est excellente

EXEC SQL CONNECT TO :prod AS pg_RTABLE USER :user USING :using  ;

etc...
j'essaye de te donner un max d'info

merci

#23 Re : C et C++ » RESOLU descripteur schéma catalog ne fonctionne que sur pgadmin » 02/10/2014 13:21:42

bonjour,
si je met l'ordre select avec pgadmin cela fonctionne parfaitement



sans solution !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
par contre   en c++  avec EXEC SQL

j’obtiens tous sauf la partie table_comment  et  column_comment








je n'ai pas de problème pour la connexion  je traite mes tables correctement  c'est juste que je voudrais préparer mon descripteur en xml  donc récupérer la description  pour faire mes fichiers xml  et automatiser des procédures lier avec CGI

d'ailleurs tu peux coller l'ordre dans PGADMINIII en chg MA_BDNAME e tMA_TABLE ça fonctionne parfaitement
SELECT
cl.table_catalog,cl.table_name,
cl.column_name,cl.ORDINAL_POSITION,cl.DATA_TYPE,cl.CHARACTER_MAXIMUM_LENGTH,cl.NUMERIC_PRECISION,cl.NUMERIC_SCALE
,(select pg_catalog.obj_description(oid) from pg_catalog.pg_class c where c.relname=cl.table_name) as table_comment
,(select pg_catalog.col_description(oid,cl.ordinal_position::int) from pg_catalog.pg_class c where c.relname=cl.table_name) as column_comment
FROM information_schema.columns cl
WHERE cl.table_catalog ='MA_BDNAME'  and cl.table_name ='MA_TABLE'

#24 C et C++ » RESOLU descripteur schéma catalog ne fonctionne que sur pgadmin » 02/10/2014 05:57:21

jplaroche
Réponses : 6

bonjour,

SELECT
cl.table_catalog,cl.table_name,
cl.column_name,cl.ORDINAL_POSITION,cl.DATA_TYPE,cl.CHARACTER_MAXIMUM_LENGTH,cl.NUMERIC_PRECISION,cl.NUMERIC_SCALE

,(select pg_catalog.obj_description(oid) from pg_catalog.pg_class c where c.relname=cl.table_name) as table_comment

,(select pg_catalog.col_description(oid,cl.ordinal_position::int) from pg_catalog.pg_class c where c.relname=cl.table_name) as column_comment

FROM information_schema.columns cl

WHERE   cl.table_catalog='CGIFCH'  and cl.table_name='FTCPAY'
  order by 4 ;



cette requête ne marche qu'avec pgadmin III
pourquoi svp

j'aurais apprécié ne pas éclater cette requête en trois 



=============================================



après  récupération db2


résultat pgadmin
               table         field       ord   type          length    len num  len apres virgule text table       text field
"CGIFCH";"FTCPAY";"TCCPAY";1   ;"character"; 3       ;              ;                        ;"CODE PAYS";"CODE PAYS"
"CGIFCH";"FTCPAY";"TC999E";2   ;"numeric"  ;          ;8            ;0                       ;"CODE PAYS";"DATE DE CREATION ENR"   



résultat C++ ECPG

"CGIFCH";"FTCPAY";"TCCPAY";1   ;"character";3       ;              ;                        ;
"CGIFCH";"FTCPAY";"TC999E";2   ;"numeric"  ;         ;8            ;0                       ;



EXEC SQL AT pg_RTABLE DECLARE pg_RTABLE_cur CURSOR FOR
SELECT
cl.table_catalog,cl.table_name,
cl.column_name,cl.ORDINAL_POSITION,cl.DATA_TYPE,cl.CHARACTER_MAXIMUM_LENGTH,cl.NUMERIC_PRECISION,cl.NUMERIC_SCALE
,(select pg_catalog.obj_description(oid) from pg_catalog.pg_class c where c.relname=cl.table_name) as table_comment
,(select pg_catalog.col_description(oid,cl.ordinal_position::int) from pg_catalog.pg_class c where c.relname=cl.table_name) as column_comment
FROM information_schema.columns cl
WHERE cl.table_catalog =:zdbname  and cl.table_name =:zfile
ORDER BY 4 ;

EXEC SQL  AT pg_RTABLE  OPEN pg_RTABLE_cur ;

EXEC SQL  AT pg_RTABLE  FETCH pg_RTABLE_cur   INTO :zSERVER, :zTABLE, :CNAME, :CPOS, :CTYP, :CLEN, :CDEC, :CVIR, :zTEXT, CTEXT;

Pied de page des forums

Propulsé par FluxBB