Récapitulatif accès base de données

BoTTom |    Changer de couleur
                                                                            Fin 
                  COMPARAISON OPNQRYF AVEC SDD ET SQL                        . 
 
     La commande OPNQRYF (Ouvrir un fichier de requête) permet d'ouvrir 
     un fichier recevant les enregistrements résultant d'une demande 
     d'analyse de base de données. Une fois ouvert, le fichier ressemble 
     à un fichier base de données ouvert à l'aide de la commande OPNDBF 
     (Ouvrir un fichier base de données). Les enregistrements qui 
     figurent dans ce fichier sont accessibles aux programmes en langage 
     évolué partageant le chemin d'ouverture (ODP).  SHARE(*YES) 
 
     Cette commande crée donc dynamiquement un "filtre" entre la base de
      données et les pgm.
 
     Le language SDD et SQL aboutissent au même résultat machine:
        La création d'un ODP.Seul moyen pour un pgm d'acceder aux données.
 
     SDD : l'ODP est crée à partir de critéres stockés définitivement dans
            le définition de fichier (souvent plus rapide mais moins souple)
 
     SQL : à l'inverse crée cet ODP à partir de critéres PGM
                                     (plus souple mais moins performant)


|    Changer de couleur
 
     Cette commande permet de combiner les fonctions des bases de données 
     suivantes : 
 
      o  Joindre les enregistrements de plusieurs fichiers, membres et 
         formats d'enregistrement. La jonction peut s'effectuer entre 
         objets de même nature ou non. 
 
      SDD     fichiers logiques joints.
 
      SQL     requete sur plus d'un fichier ou vue.
 
      o  Calculer de nouvelles valeurs de zones à l'aide d'opérations 
         numériques et alphanumériques sur les valeurs de zones et les 
         constantes. 
 
      SDD     redéfinition de zone (RENAME,CONCAT,SST et TRNTBL)
               mais pas de calcul.
 
      SQL     <expression> SQL offrant les mêmes possibilités que OPNQRYF.
 
 


|    Changer de couleur
      o  Grouper des enregistrements selon des valeurs communes 
         appartenant à une ou plusieurs zones et calculer des fonctions 
         globales, telles que la valeur minimum ou moyenne de zone, pour 
         chaque groupe. 
 
      SDD     non (aucune fonction de groupage)
 
      SQL     clause GROUP BY
 
      o  Choisir une sous-liste des enregistrements disponibles, avec 
         sélection avant et après de groupage des enregistrements. 
 
      SDD     non (aucune fonction de groupage)
 
      SQL     clause HAVING
 
      o  Classer les enregistrements de résultats selon la valeur d'une 
         ou plusieurs zones clés. 
 
      SDD     définition de clé (K en colonne 17)
 
      SQL     clause ORDER BY


|    Changer de couleur
 
     PARAMETRES DE LA COMMANDE 
............................................................................
: o Spécifications de fichier (FILE)                                       :
:                                                                          :
:    Indique un ou plusieurs fichiers base de données.                     :
:                                                                          :
:    Tous les fichiers indiqués doivent être des fichiers bases de         :
:    données physiques ou logiques, ou bien des fichiers DDM.              :
:     (fichier joints SDD et vue SQL supportés)                            :
:                                                                          :
:                                                                          :
: SDD PFILE ou JFILE                                                       :
:                                                                          :
:                                                                          :
:                                                                          :
: SQL clause FROM                                                          :
:                                                                          :
:                                                                          :
:                                                                          :
:                                                                          :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Options d'ouverture (OPTION)                                           :
:                                                                          :
:    Indique l'option d'ouverture utilisée pour le fichier d'analyse. Les  :
:    options choisies lors de la première ouverture effective d'un         :
:    fichier ne seront pas modifiées lors des prochaines ouvertures        :
:    partagées. Vous pouvez indiquer soit *ALL , soit une liste pouvant    :
:    compter jusqu'à quatre valeurs dans l'ordre de votre choix,           :
:    représentant une combinaison des valeurs *INP , *OUT , *UPD et *DLT . :
:                                                                          :
:                                                                          :
:                                                                          :
: SDD non (c'est le pgm qui determine le type d'ouverture)                 :
:                                                                          :
:                                                                          :
:                                                                          :
: SQL clause FOR UPDATE OF (dans un déclaration de curseur).               :
:                                                                          :
:                                                                          :
: ==> A noter que le seul type d'ouverture possible avec une jonction      :
:            ou un traitement récapitulatif est *INP.                      :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Spécifications de format (FORMAT)                                      :
:                                                                          :
:    Indique le format d'enregistrement utilisé (c.a.d comment formater    :
:    les enregistrements devant être envoyés au programme).                :
:    les variables de ce format sont à définir dans le paramètre MAPFLD    :
:    Spécifications zone mappée si elles apparaissent plusieurs fois sur   :
:    l'ensemble des fichiers (MAPFLD servant à qualifier) ou               :
:    si elles n'apparaissent jamais dans le(s) fichier(s) ouvert(s)        :
:    (MAPFLD servant à indiquer l'expression de définition CALCUL, FONCTION:
:    RECAPITULATIVE ou TRAITEMENT DE CHAINE DE CARACTERES)                 :
:                                                                          :
: SDD Redéfinition de zone (mais pas d'expression arithmetique)            :
:     RENAME, CONCAT, SST, TRNTBL et rédéfinition de type et/ou de lg.     :
:     Le format d'un fichier logique peut utiliser le format d'un autre    :
:      fichier avec le mot-cle FORMAT.                                     :
: SQL suite d'expression apres la clause SELECT.                           :
:                                                                          :
:    Toutes les possibilités de OPNQRYF.                                   :
:                                                                          :
:               (utilisation de tables de conversion = TRNTBL,SDD)         :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Expression de sélection (QRYSLT)                                       :
:                                                                          :
:    Indique les valeurs de sélection utilisées (avant groupage) pour      :
:    déterminer quels enregistrements sont accessibles par la commande     :
:    OPNQRYF.                                                              :
:                                                                          :
:     *ALL                                                                  :
:        Pas de sélection.                                                 :
:                                                                          :
:    'sélection-analyse'                                                   :
:        Entrez (entre apostrophes) une expression                         :
:                                                                          :
:                                                                          :
:                                                                          :
:            OPERATEURS LOGIQUES                                           :
:                ceux du CL: *EQ,*NE,*GT,*GE,*LT,*LE,*NG,*NL               :
:                plus *CT  contient                                        :
:                     *XOR OU exclusif                                     :
:                                                                          :
:                                                                          :
:..........................................................................:


|    Changer de couleur
............................................................................
:            FONCTIONS :     %ABSVAL  valeur absolue                       :
:                                                                          :
:                            %SST     extraction                           :
:                                                                          :
:                            %DIGITS  conversion numérique/alpha           :
:                                                                          :
:                            %AND , %OR , %NOT                             :
:                                                                          :
:                            %XLATE   conversion                           :
:                                                                          :
:                            %RANGE   intervalle                           :
:                                                                          :
:                            %VALUES  liste de valeurs                     :
:                                                                          :
:                            %WLDCRD  recherche configuration de caractères:
:                                                                          :
:                            une opération mathématique peut servir        :
:                            aussi comme zone de sélection                 :
:                            ex: QRYSLT('A/B > 2')                         :
:                                QRYSLT('QTE * PU > 10000.00')             :
:..........................................................................:


|    Changer de couleur
............................................................................
:                                                                          :
: SDD Sélection/omission en définition de C.A                              :
:                                                                          :
:     par défaut sélection/omission à la maintenance de l'index            :
:         (ouveture rapide)                                                :
:     peuvent être demandées à la lecture du logique (DYNSLT)              :
:                                                                          :
:     OPERATEURS: COMP (NE,EQ,GT etc...) + RANGE + VALUES                  :
:                                                                          :
:     Conditions complexes (reliées par ou/et) acceptées,                  :
:                    Fonction XOR non supportée.                           :
:                                                                          :
: SQL Clause WHERE   #                                                     :
:                                                                          :
:     Séléction à la "lecture"                                             :
:                                                                          :
:     OPERATEUR   les opérateurs logiques traditionnels (sauf XOR)         :
:                 BETWEEN (= RANGE)                                        :
:                 LIST    (= VALUES)                                       :
:                 LIKE    (= %WLRCRD-OPNQRYF)                              :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Spécifications de zone-clé (KEYFLD)                                    :
:                                                                          :
:    Indique le nom d'une ou plusieurs zones clés utilisées pour classer   :
:    les enregistrements sélectionnés ou indique que le chemin d'accès     :
:    du premier ou unique fichier(*FILE)                                   :
:                                                                          :
:    Avec une jonction la clé peut appartenir a n'importe quel fichier.    :
:                                                                          :
:    ATTENTION la valeur par défaut est *NONE                              :
:                                                                          :
: SDD Définition du C.A  #                                                 :
:                                                                          :
:     (lettre K en colonne 17)                                             :
:                                                                          :
:     Sur un fichier joint la clé doit appartenir au fichier primaire.     :
:                                                                          :
: SQL Clause ORDER BY    #                                                 :
:                                                                          :
:     Sans restriction                                                     :
:                                                                          :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Zones pour une seule clé (UNIQUEKEY)                                   :
:                                                                          :
:    Indique si l'analyse est limitée aux enregistrements ayant des        :
:    valeurs de clé uniques et précise combien de zones clés doivent être  :
:    uniques.                                                              :
:                                                                          :
:    Ce paramètre permet de ne recevoir que le premier enregistrement      :
:     d'un groupe.Le nombre indiqué permet de préciser le nombre de        :
:     zones clés identifiant un groupe.                                    :
:                                                                          :
: SDD non                #                                                 :
:                                                                          :
:    Le mot-clé UNIQUE permet de refuser les enregistrements qui           :
:     provoqueraient une clé en double à l'écriture.                       :
:                                                                          :
: SQL                    #                                                 :
:                                                                          :
:    La clause DISTINCT permet de ne pas recevoir les enregistrements      :
:     identiques (le contrôle d'identité se faisant sur la totalité de     :
:     l'enregistrement et non sur le contenu des clés).                    :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Spécification zone de jonction (JFLD)                                  :
:                                                                          :
:    Indique, si l'analyse consiste à joindre des enregistrements,         :
:    le(s) critère(s) de jonction entre fichiers.                          :
:                                                                          :
:    Les valeurs possibles sont les suivantes :                            :
:                                                                          :
:     *NONE   (les critères de jonction peuvent être indiqués dans QRYSLT)  :
: ou                                                                       :
:    zone-départ-qualifiée                                                 :
:     zone-arrivée-qualifiée                                               :
:      opérateur-jonction        *EQ *GT *GE *LT *LE *NE                   :
:                                                                          :
: SDD JFLD + JDUPSEQ     #                                                 :
:                                                                          :
:     Le critère de jonction est forcement l'égalité.                      :
:                                                                          :
: SQL                    #                                                 :
:     Le critère de jonction est indiqué dans la clause WHERE permettant   :
:      de restreindre le résultat d'un produit cartésien.                  :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Jonction avec valeurs/défaut (JDFTVAL)                                 :
:                                                                          :
:    Indique si le fichier d'analyse doit contenir les jonctions           :
:     non abouties.                                                        :
:                                                                          :
:    *NO le fichier ne contient que les enregistrements pour lesquels      :
:        la jonction est complete.                                         :
:                                                                          :
:    *YES                                                                  :
:        le fichier contient tous les enregistrements.                     :
:         les zones du(des) fichier(s) secondaires sont initialisées en    :
:         cas de jonction incomplete.                                      :
:                                                                          :
:    *ONLYDFT                                                              :
:        Le fichier ne contient que les enregistrements pour lesquels      :
:        le jonction est incomplete.                                       :
:                                                                          :
: SDD JDFTVAL            #                                                 :
:        Sans JDFTVAL = JDFTVAL(*NO) , Avec = JDFTVAL(*YES)                :
:        *ONLYDFT impossible (ou avec sélection et DYNSLT)                 :
:..........................................................................:


|    Changer de couleur
............................................................................
: SQL                                                                      :
:                                                                          :
:    La notion de PRIMAIRE étant inconnue il n'est pas possible de         :
:     préciser ce paramètre tel quel.                                      :
:    Cependant avec la clause EXIST (R 1.3) il est possible d'obtenir      :
:    l'équivalent (performances non comparables) :                        :
:                                                                          :
:    ===> Identique à *ONLYDFT                                             :
:          SELECT S.NOM, S.PRENOM, S.NOAGENCE                              :
:                    FROM STAGIAIRE S WHERE NOT EXISTS                     :
:                             (SELECT * FROM AGENCE where                  :
:                              NOAGENCE = S.NOAGENCE)                      :
:                                                                          :
:    ===> Identique à *JDFTVAL                                             :
:          SELECT S.NOM, S.PRENOM, A.NOMAGENCE                             :
:              FROM STAGIAIRE S, AGENCE A WHERE S.NOAGENCE = A.NOAGENCE    :
:              UNION SELECT NOM, PRENOM, 'INCONNUE '                       :
:                    FROM STAGIAIRE S WHERE NOT EXISTS                     :
:                             (SELECT * FROM AGENCE where                  :
:                              NOAGENCE = S.NOAGENCE)   /order by possible :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Ordre de jonction des fichiers (JORDER)  Valide uniquement avec JDFTVAL:
:                                                                          :
:     *ANY                                                                  :
:        Vous pouvez indiquer l'ordre de jonction de votre choix, le       :
:        système le prendra en compte lors de la création                  :
:        d'enregistrements d'analyse. Il est possible qu'une analyse       :
:        renvoie dans un ordre différent les enregistrements obtenus si    :
:        la même analyse est lancée deux fois de suite (en fonction de     :
:        facteurs tels que le nombre d'enregistrements figurant dans les   :
:        fichiers concernés). La valeur *ANY permet au système             :
:        d'améliorer plus facilement les performances du traitement des    :
:        enregistrements par la commande OPNQRYF, et ce plus que toute     :
:        autre valeur de l'invite Ordre de jonction des fichiers           :
:        (paramètre JORDER).                                               :
:                                                                          :
:    *FILE                                                                 :
:        L'ordre de déclaration dans le paramètre FILE est respecté.       :
:                                                                          :
: SDD    non                                                               :
: SQL    non                                                               :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Noms zones récapitulatives (GRPFLD)                                    :
:                                                                          :
:    Indique les noms de zones utilisés pour grouper les résultats         :
:    d'analyse. Un enregistrement d'analyse est créé pour chaque groupe    :
:    d'enregistrements (après jonction, si nécessaire) choisi en regard    :
:    de l'invite Expression de sélection (paramètre QRYSLT).               :
:                                                                          :
:    Permet d'utiliser les fonctions récapitulatives %COUNT(), %AVG() etc  :
:                                                                          :
:                                                                          :
: SDD    non                                                               :
:                                                                          :
: SQL    GROUP BY                                                          :
:                                                                          :
:    Meme principe, mêmes fonctionnalités.                                 :
:                                                                          :
:                                                                          :
:                                                                          :
:                                                                          :
:                                                                          :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Expression sélection récap (GRPSLT)                                    :
:                                                                          :
:    Indique les valeurs de sélection permettant de déterminer après       :
:    groupage les enregistrements accessibles par la commande OPNQRYF.     :
:                                                                          :
:     (Sélection sur le résultat d'un traitement récapitulatif)            :
:                                                                          :
:    Meme possibilités que QRYSLT                                          :
:                                                                          :
: SDD    non                                                               :
:                                                                          :
:                                                                          :
: SQL    HAVING                                                            :
:                                                                          :
:    Meme principe,                                                        :
:                                                                          :
:                                                                          :
:                                                                          :
:                                                                          :
:                                                                          :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Spécifications zone mappée (MAPFLD)                                    :
:                                                                          :
:    Ce paramètre permet de qualifier une zone dont le nom apparait        :
:    plusieurs fois et de définir une nouvelle zone en indiquant           :
:    une expression.                                                       :
:                                                                          :
:    nom de zone mappée                                                    :
:     expression de définition zone                                        :
:        + 'PRODUIT/QTESTO' (nom de zone qualifiée ou non)                 :
:        + 'QTESTO * PAMP'  (expression numérique)                         :
:        + '%AVG(QTESTO)'   (fonction récaptitulative)                     :
:        + '%SST(NOM 1 2)   (traitement chaine de caracteres)              :
:     Type de zone  (*CHAR, *ZONED, *DEC) et longueur                      :
:                                                                          :
: SDD    JREF et redéfinition de zone                                      :
:        RENAME, CONCAT, SST, TRNTBL  (pas de fonctions récapitulatives)   :
:                                                                          :
: SQL    Suite d'expressions après la clause SELECT                        :
:        Memes possibilités que OPNQRYF.                                   :
:                                                                          :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Optimisation performance (OPTIMIZE)                                    :
:                                                                          :
:    Indique quel moyen d'optimisation est utilisé par le système pour     :
:    déterminer la manière d'effectuer la sélection et la jonction         :
:    nécessaires aux autres spécifications relatives à cette commande.     :
:    Si, lorsqu'aucun chemin d'accès existant ne peut être partagé, un     :
:    nouveau chemin d'accès doit être créé pour les invites                :
:    Spécifications de zone-clé (paramètre KEYFLD) ou Noms zones           :
:    récapitulatives (paramètre GRPFLD), celui-ci est entièrement          :
:    constitué sans tenir compte de la valeur indiquée pour ce paramètre.  :
:    L'optimisation concerne en premier lieu la durée de traitement de la  :
:    sélection.                                                            :
:                                                                          :
:     *ALLIO                                                                :
:                                                                          :
:        Le système tente de raccourcir la durée totale de traitement de   :
:        l'analyse, sachant que la totalité des enregistrements d'analyse  :
:        se trouve sur le fichier.                                         :
:                                                                          :
:        A utiliser en batch ou seul le temps global est à considerer      :
:..........................................................................:


|    Changer de couleur
............................................................................
:                                                                          :
:    *FIRSTIO                                                              :
:        Le système tente de raccourcir la durée de la procédure           :
:        d'ouverture du fichier d'analyse et d'extraction des              :
:        enregistrements contenus dans la première zone tampon.            :
:                                                                          :
:        A utiliser avec SEQONLY(*YES)                                     :
:                                                                          :
:        Par exemple OPTIMIZE(*FIRSTIO) SEQONLY(*YES 15)                   :
:         sera tres interessant avnt un pgm interactif utilisant           :
:         un sous-fichier en chargement page à page avec SFLPAG(15)        :
:    *MINWAIT                                                              :
:        Le système tente de réduire les délais d'attente lorsqu'il lit    :
:        les enregistrements du fichier.                                   :
:                                                                          :
:        Cette option est à utiliser quand le résultat de votre requete    :
:         sera traité plusieurs fois.                                      :
:        Le système rend alors les sélections plus éfficaces (sans DYNSLT) :
:        pour permettre un accès plus rapide aux enregistrements de la part:
:        des pgms. (==> contruction CA donc OPNQRYF plus lent)             :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Limite à séquentiel uniquement (SEQONLY)                               :
:                                                                          :
:    Indique si un traitement exclusivement séquentiel est utilisé pour    :
:    le fichier et précise le nombre d'enregistrements regroupés lors de   :
:    l'exécution d'opérations de lecture et d'écriture sur le fichier      :
:    d'analyse.                                                            :
:                                                                          :
:     *YES  Suivi d'un nombre d'enregistrements                             :
:          Si le nombre d'enreg.n'est pas précisé le système calcule le    :
:          nombre d'enregistrements pouvant être placés dans 4096 Octets.  :
:    *NO                                                                   :
:                                                                          :
: Ces paramètres n'existent pas tel quel avec SDD ou SQL                   :
:                                                                          :
:    Cependant la commande OVRDBF contient les paramètres SEQONLY et       :
:                                                         NBRRCD           :
:                                                                          :
:    Les options d'optimisations peuvent être pensées à la contruction     :
:     d'un fichier SDD (DYNSLT pour partage implicite d'un CA existant,    :
:                       Parametre MAINT pour la maintenance du CA)         :
:..........................................................................:


|    Changer de couleur
............................................................................
: o Contrôle de validation actif (COMMIT)                                  :
:                                                                          :
:    Indique si ce fichier est placé sous contrôle de validation.          :
:                                                                          :
:     *NO                                                                   :
:        Le fichier d'analyse ouvert n'est pas placé sous contrôle de      :
:        validation.                                                       :
:                                                                          :
:    *YES                                                                  :
:        Le fichier d'analyse ouvert est placé sous contrôle de            :
:        validation.                                                       :
:                                                                          :
: SDD                                                                      :
:        C'est le pgm qui indique les fichiers à placer sous contrôle      :
:        de validation (en RPG   spécif F   K COMMIT)                      :
:                      (en COBOL UNDER COMMITMENT CONTROL)                 :
:                                                                          :
: SQL                                                                      :
:        Ce paramètre est indiqué dans la commande STRSQL                  :
:                             ou  dans la commande CRTSQLxxx               :
:..........................................................................:





©AF400