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

Unix Discussion :

requete sql sous unix


Sujet :

Unix

  1. #1
    Membre régulier
    Inscrit en
    Août 2003
    Messages
    228
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 228
    Points : 92
    Points
    92
    Par défaut requete sql sous unix
    Bonjour,

    Je suis pas un pro de unix,

    J'ai deux trois questions.

    J'ai pas trouver sur le forum, ni sur le net, comment executer une requete sous unix automatiquement? (ex:toute les heures)

    -----------------------
    Je voudrais aussi faire une requette pour renommer des fiches articles.
    Ma table s'appel "article".
    Mais uniquement les articles don le code "geo" et egale a "suppri".
    renomer les articles par "a supprimer" (ex: 'eric' par "a supprimer"

    Dans la table
    Code article - Nom - Geo
    1231----------eric------suppri


    Eventuellement je peux vous envoyer le fichier.

    Merci de vos reponses.

    Commandeur.
    Commandeur

  2. #2
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    il faut faire 2 choses

    utiliser la crontab (planificateur)

    exemple

    crontab -e
    >0 0 * * 1 /chemin/script
    lancera le script les lundi à 00h00

    quand au script

    il peut se comporter comme ça par exemlpe

    mysql << EOF
    select * from TOTO where ERREURS="vrai"
    EOF
    il peut aussi executer un fichier sql comme par exemple

    sqlplus options.... @fichier.sql
    après ça dépend surtout de quel SGBD tu utilises

    mais que utilises les 2 modes de fonctionnements il fonctionneront tous

    commande << EOF
    commande interne
    commande interne
    ...
    commande interne
    EOF

    commande optionquilitunfichierexternecontenantdescommandesinternes

    dans tous les cas ça marche et pas que sql
    c'est des archis standardisées sous unix

    un exemple concret avec mysql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #!/usr/bin/bash
    (mysql -u user_de_la_base -h localhost pecoro << EOF
    select user from status;
    EOF) | tee ./resultat.txt
    un exemple avec un fichier externe sous mysql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #!/bin/sh
    mysql -u user -h host << maj_stock.sql 2 > $LOG/WARNING
    un exemple avec sqlplus pour oracle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    usernm='bidule/machin'
    REP_PROG=/chemi/vers/le/sql
    PROG=truc.sql
    LANCE_PROG="sqlplus -s $usernm @$REP_PROG/$PROG"
    ...
     
    $LANCE_PROG
    ...
    tu peux faire pareil pour d'autres commandes comme ftp ou autre...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ftp toto << EOF
    cd titi
    lcd /tmp
    mget *.err
    cd tutu
    put *.retour
    bye
    EOF

  3. #3
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    Citation Envoyé par Commandeur Voir le message
    Bonjour,

    Je voudrais aussi faire une requette pour renommer des fiches articles.
    Ma table s'appel "article".
    Mais uniquement les articles don le code "geo" et egale a "suppri".
    renomer les articles par "a supprimer" (ex: 'eric' par "a supprimer"

    Dans la table
    Code article - Nom - Geo
    1231----------eric------suppri


    Eventuellement je peux vous envoyer le fichier.

    Merci de vos reponses.

    Commandeur.

    quand à la requette sql
    elle ressemblera à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update article set nom='a supprimer' where geo='suppri" ;
    ce qui dans un script peut se faire comme indiqué précédement :
    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
     
    #!/bin/sh
    if [ `ps -ef | grep -i mysqld |wc -l` -lt 3 ] ; then
     echo mysql n'est pas démarré : ECHEC DE LA PROCEDURE | tee /var/log/miseajour.err
     exit 1
    fi
    #si mysql est ok on peut lancer la requette
    (
    mysql -u user -h localhost << EOF
    use nomdatabase ;
    update article set nom='a supprimer' where geo='suppri" ;
    quit
    EOF
    ) 1>> /var/log/miseajour.log 2>>/var/log/miseajour.err
    exit $?

Discussions similaires

  1. [VBA-E] Requete SQL sous Excel
    Par climz dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 22/05/2006, 14h05
  2. Recherche de requete sql sous access
    Par climz dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 15/05/2006, 09h16
  3. [sql]Probleme de count dans une requete sql (sous access)
    Par castelligreg dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 14/04/2006, 16h06
  4. Problème avec une requete SQL sous access
    Par Luther13 dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 14/12/2005, 10h39
  5. Optimiser une Requetes SQL sous ASP
    Par NeHuS dans le forum ASP
    Réponses: 8
    Dernier message: 18/04/2005, 16h26

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