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

Oracle Discussion :

Faire un script qui me créer un script


Sujet :

Oracle

  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 213
    Par défaut Faire un script qui me créer un script
    Salut à tous,

    Je travail avec un serveur Oracle 9.2 (mais je pense que cela ne change rien).

    J'aimerai lancé une requete qui me permette d'en recréer une. Exemple:
    select TABLE.nom from TABLE , j'aimerai remplace le champ TABLE par toutes les tables d'un de mes schéma et ce mis dans un fichier texte.

    D'avance merci pour votre aide

  2. #2
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Le plus simple est de construire vos requêtes à partir d'un select.
    Une fois que c'est fait, il vou suffit de spooler dans un fichier SQL et de le lancer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SPOOL requetes.SQL
     
    SELECT 'select * from '||Table_Name||' where RowNum = 1;'
      FROM User_Tables
     WHERE Table_Name like '%TOTO%';
     
    SPOOL OFF
     
    @requetes.SQL
    Ainsi, le script vous affichera la première ligne de toutes vos tables dont le nom comporte TOTO ;-)

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 213
    Par défaut
    En réalité, j'ai dans toutes mes tables de ma db un champ, qui se nomme enmodif et j'aimerai faire un script qui efface tous le contenu des "enmodif" de toutes mes tables, mon problème c'est que j'ai 63 tables et pour ne pas faire d'erreur j'aimerai lancer un script qui me créer un script avec tous les nom des tables correct.

    la requete étant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update enmodif="" from TABLE;
    TABLE devant être remplacer par le nom de toutes mes tables dans un scripts généré "automatiquement".

    Encore merci pour votre aide

  4. #4
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Je pense qu'avec un minimum d'efforts personnels et de tests, à partir de l'exemple que je vous ai fourni, vous devriez obtenir tout seul le résultat attendu ! ;-)

    Le forum n'est pas là pour faire le boulot à votre place mais pour vous donner des clés, des pistes, des ébauches de solutions que vous pourrez adapter/valider/tester/comprendre.

  5. #5
    CD
    CD est déconnecté
    Membre éprouvé
    Inscrit en
    Septembre 2004
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 127
    Par défaut
    C'est vrai que ce que vous a donné LeoAnderson permet de faire ce que vous voulez...

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 213
    Par défaut
    Vous avez raison, j'ai chercher par rapport à votre exemple et cela fonctionne. Encore merci.

    Mais est il possible de mettre uniquement les requetes et pas mettre les diverses infos du styles nombres de lignes créer, tentative de création, ...

    D'avance merci.

  7. #7
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Voilà un post qui devrait t'aider :
    http://www.developpez.net/forums/vie...ight=term+echo

  8. #8
    CD
    CD est déconnecté
    Membre éprouvé
    Inscrit en
    Septembre 2004
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 127
    Par défaut
    C'est possible en utilisant les commandes SQL*Plus, comme heading, feedback ou echo :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    test@BROCANTE> @b.sql
    test@BROCANTE> select * from b;
     
            C1 C2
    ---------- --------------------
          3501 Information Toto
          3502 Information Tata
          3503 Information Titi
          3504 Information Tutu
          3506 Information Tyty
     
    5 rows selected.
     
    test@BROCANTE> set heading off
    test@BROCANTE> @b.sql
    test@BROCANTE> select * from b;
     
          3501 Information Toto
          3502 Information Tata
          3503 Information Titi
          3504 Information Tutu
          3506 Information Tyty
     
    5 rows selected.
     
    test@BROCANTE> set feedback off
    test@BROCANTE> @b.sql
    test@BROCANTE> select * from b;
     
          3501 Information Toto
          3502 Information Tata
          3503 Information Titi
          3504 Information Tutu
          3506 Information Tyty
    test@BROCANTE> set echo off
    test@BROCANTE> @b.sql
     
          3501 Information Toto
          3502 Information Tata
          3503 Information Titi
          3504 Information Tutu
          3506 Information Tyty
    Il existe encore plein de commande SQL*Plus

  9. #9
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 213
    Par défaut
    OK, Un grand merci pour votre aide à tous et bonne continuation

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/10/2014, 16h55
  2. Réponses: 1
    Dernier message: 22/12/2008, 09h16
  3. Créer un script qui envoie un mail
    Par diamonds dans le forum Linux
    Réponses: 15
    Dernier message: 18/03/2007, 15h45
  4. Réponses: 8
    Dernier message: 16/03/2007, 16h43
  5. Script qui s'arrète !! Comment faire autrement ?
    Par Xplosif² dans le forum C++
    Réponses: 5
    Dernier message: 25/02/2006, 22h10

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