IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AS/400 Discussion :

Renommer ALIAS d'une colonne


Sujet :

AS/400

  1. #1
    Membre éprouvé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Octobre 2006
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2006
    Messages : 691
    Points : 996
    Points
    996
    Par défaut Renommer ALIAS d'une colonne
    Bonjour,

    Nous devons échanger des fichiers avec une autre société.
    Cette société a des programmes qui vont utiliser le nom ALIAS (par les descriptions internes RPG).
    Et là on s'est aperçu qu'un de nos fichiers comportait une erreur à ce niveau. En clair les zone commencent toutes par "CNT", et 2 d'entre elles commencent par "CND".
    N'utilisant plus les alias, nous ne nous en étions pas rendu compte.

    On cherche donc un moyen de renommer les alias sans avoir à supprimer le fichier et ses dépendances puis le reconstruire correctement.

    Quelqu'un a une astuce, idée ?

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Essayez STRSQL puis
    LABEL ON COLUMN Biblio/Fichier (Zone IS 'Label')

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 55
    Points : 75
    Points
    75
    Par défaut
    En créant une vue qui renomme les colonnes on peut accéder a ces noms aussi en faisant un select sur la table.
    Càd qu'en faisant un CREATE VIEW MAVUE as (select ...,CNDxx as CNTxx, CNDyy as CNTyy, ... from MATABLE)
    Il est possible de faire un SELECT CNTxx, CNTyy from MATABLE

  4. #4
    Membre régulier
    Homme Profil pro
    Application Developer (IBM i/MS-SQL)
    Inscrit en
    Janvier 2008
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Application Developer (IBM i/MS-SQL)
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2008
    Messages : 90
    Points : 124
    Points
    124
    Par défaut
    Citation Envoyé par FORMULARY Voir le message
    Essayez STRSQL puis
    LABEL ON COLUMN Biblio/Fichier (Zone IS 'Label')

    Bien utile cette astuce qui permet de changer le Column Heading .

    De plus, si le Field text est aussi à modifier alors c'est :
    LABEL ON COLUMN BILIOTHEQUE/FICHIER (ZONE TEXT IS 'NOUVEAU TEXTE')

  5. #5
    Membre éprouvé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Octobre 2006
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2006
    Messages : 691
    Points : 996
    Points
    996
    Par défaut
    Citation Envoyé par FORMULARY Voir le message
    Essayez STRSQL puis
    LABEL ON COLUMN Biblio/Fichier (Zone IS 'Label')
    Merci, mais çà change l'intitulé de colonne, pas l'alias.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    On peut essayer de modifier l'alias dans le source du fichier puis de faire un CHGPF avec SRCFILE indiqué.
    J'ai un peu peur, par contre, que ca casse les programmes compilés (même si ils n'utilisent pas les alias, le niveau de format pourrait être modifié)

    Sinon, il reste la solution de vazymimil, à savoir une vue (ou un logique DDS) avec les bons noms.
    Et là au moins, pas de recompilation à prévoir !

  7. #7
    Membre éprouvé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Octobre 2006
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2006
    Messages : 691
    Points : 996
    Points
    996
    Par défaut
    C'est du SQL pur, pas de DDS.
    Et seuls des programmes en PHP y accèdent chez nous.
    Je pourrais passer par une vue pour eux, mais j'avoue que maintenant que j'ai repéré la boulette, je ressens le besoin de corriger çà.
    Je vais donc devoir créer un fichier identique avec ses index, contraintes, etc... dans une autre biblio mais avec les bons alias, puis copier les données, supprimer le vieux fichier et ses dépendances, et enfin déplacer le nouveau avec ses dépendances dans la biblio d'origine.

  8. #8
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Avec SQL sur AS400 il suffit de donner un nom à une colonne pour que ce nom devienne le nom de la colonne quand on enregistre les données.

    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select champ1 as mon_champ1
    from toto
    Dans STRSQL si on fait la sortie dans un fichier (option F13 puis option 3) le nouveau fichier aura mon_champ1 comme nom de colonne.

    @m4k-Hurrican
    Quelle est la forme du fichier échangé ? Est-ce un fichier AS400 ou autre chose ?
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

  9. #9
    Membre éprouvé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Octobre 2006
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2006
    Messages : 691
    Points : 996
    Points
    996
    Par défaut
    Bonjour,

    Comme indiqué on utilise plus, chez nous, que SQL. Certains vieux fichiers définis en DDS existent encore, mais on les remplacent petit à petit.
    C'est pourquoi avec ce fichier, on avait pas remarqué que les ALIAS avaient mal été définis.
    Et le fichier est transmis par SFTP.
    De leur côté, il vont utiliser des programmes en RPG pour accéder aux données, et là, ce sont les ALIAS qui vont ressortir.

    De toute manière, je ne peux pas laisser çà en l'état, c'est anormal dans notre BD.
    Puisque IBM n'a pas fourni de solution pour rectifier les noms d'alias, la solution qu'on va utiliser, c'est :
    - Sauvegarde de la bibliothèque de fichiers concernés.
    - Génération de scripts SQL pour les dépendances et le fichier.
    - Correction du script du fichier avec les bons ALIAS.
    - Création d'une copie corrigée du fichier dans une autre biblio, grâce au script modifié.
    - Copie des données dans le fichier corrigé.
    - Suppression des dépendances.
    - Suppression du fichier.
    - Déplacement du fichier corrigé dans la biblio d'origine.
    - Création des dépendances à partir des scripts générés à la 1ère étape.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. utiliser l'alias d'une colonne dans une requête
    Par da_latifa dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/04/2010, 23h34
  2. Renommer le nom d'une colonne avec toad
    Par lightzeus dans le forum Toad
    Réponses: 4
    Dernier message: 13/08/2008, 15h34
  3. dba studio oracle 8.i renommer une colonne
    Par rockabilly dans le forum Oracle
    Réponses: 6
    Dernier message: 27/11/2006, 12h23
  4. Renommer une colonne avec ALTER TABLE...
    Par David.V dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/07/2004, 10h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo