Script en shell avec requette sql
Résolu
nbonnet
Messages postés
503
Statut
Membre
-
nbonnet Messages postés 503 Statut Membre -
nbonnet Messages postés 503 Statut Membre -
Bonjour,
Je ne sais pas si c'est le bon forum mais je tente quand même.
Je voudrais créer un script qui m'affiche le résulat de ma requette sql. Ma question est simple :
omment en shell je peux récupérer les données que renvoi ma requette (sachant qu'elle renvoie 2 colonnes avec X lignes)?
Mes recherches m'ont permis de trouver comment l'executer mais pas de récupérer les valeurs.
Est-ce qu'il suffit de faire :
MaVar='sql -S serveur -D base -U utilisateur -P mot_de_passe -b Base <requetes.sql'
Merci d'avance
Je ne sais pas si c'est le bon forum mais je tente quand même.
Je voudrais créer un script qui m'affiche le résulat de ma requette sql. Ma question est simple :
omment en shell je peux récupérer les données que renvoi ma requette (sachant qu'elle renvoie 2 colonnes avec X lignes)?
Mes recherches m'ont permis de trouver comment l'executer mais pas de récupérer les valeurs.
Est-ce qu'il suffit de faire :
MaVar='sql -S serveur -D base -U utilisateur -P mot_de_passe -b Base <requetes.sql'
Merci d'avance
A voir également:
- Shell sql
- Classic shell - Télécharger - Personnalisation
- Logiciel sql - Télécharger - Bases de données
- Requête sql pix - Forum Python
- Secure shell - Télécharger - Divers Web & Internet
- Shell infrastructure host c'est quoi - Guide
26 réponses
hello
avec quel shell ?
essayer :
MaVar=$(sql -S serveur -D base -U utilisateur -P mot_de_passe -b Base <requetes.sql)
avec quel shell ?
essayer :
MaVar=$(sql -S serveur -D base -U utilisateur -P mot_de_passe -b Base <requetes.sql)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oki alors la réponse est qu'il ne connait pas la commande sql j'ai recherché sur le net je ne trouve pas comment faire.
je precise que je suis sur mac, j'ai installé MAMP et que le reste du script se lance bien.
je precise que je suis sur mac, j'ai installé MAMP et que le reste du script se lance bien.
Voila ce que "echo $PATH" me renvoie :
/Library/Frameworks/Python.framework/Versions/Current/bin:/bin:/sbin:/usr/bin:/usr/local/bin:/usr/sbin
Je ne trouve pas lequel choisir il me retourne a chaque fois :
No such file or directory.
Vraiment dsl je suis vraiment debutant. En tout cas merci de m'aider
/Library/Frameworks/Python.framework/Versions/Current/bin:/bin:/sbin:/usr/bin:/usr/local/bin:/usr/sbin
Je ne trouve pas lequel choisir il me retourne a chaque fois :
No such file or directory.
Vraiment dsl je suis vraiment debutant. En tout cas merci de m'aider
il faut savoir où est installé l'exécutable sql
y a-t-il une variable d'environnement ? set ¦ grep -i sql
sinon le chercher
find / -type f -name sql -ls
y a-t-il une variable d'environnement ? set ¦ grep -i sql
sinon le chercher
find / -type f -name sql -ls
apparemment il n'y a pas de variable d'environnement et le find me le trouve pas.
auto115:~ nbonnet$ set | grep -i sql
auto115:~ nbonnet$ find / -type f -name sql -ls
find: /.fseventsd: Permission denied
find: /.Spotlight-V100/Store-V1: Permission denied
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
find: /Library/Application Support/Apple/ParentalControls/Users: Permission denied
find: /Library/Application Support/Apple/Remote Desktop/Client: Permission denied
find: /Library/Application Support/Apple/Remote Desktop/Task Server: Permission denied
find: /Library/Application Support/Lobotomo Software/IPSecuritas: Permission denied
find: /Library/Application Support/VPN Tracker 4/cert: Permission denied
find: /Library/Caches/com.google.MacFUSEAutoinstaller.Keystone.0: Permission denied
find: /Library/Caches/com.google.UpdateEngine.Framework.0: Permission denied
find: /Library/Logs/Console/501: Permission denied
find: /Library/PreferencePanes/Sybase.prefPane: Permission denied
find: /net/localhost: Operation timed out
find: /net/broadcasthost: Operation timed out
et ceci n'en fini plus
puis
auto115:~ nbonnet$ set | grep -i sql
auto115:~ nbonnet$ find / -type f -name sql -ls
find: /.fseventsd: Permission denied
find: /.Spotlight-V100/Store-V1: Permission denied
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
find: /Library/Application Support/Apple/ParentalControls/Users: Permission denied
find: /Library/Application Support/Apple/Remote Desktop/Client: Permission denied
find: /Library/Application Support/Apple/Remote Desktop/Task Server: Permission denied
find: /Library/Application Support/Lobotomo Software/IPSecuritas: Permission denied
find: /Library/Application Support/VPN Tracker 4/cert: Permission denied
find: /Library/Caches/com.google.MacFUSEAutoinstaller.Keystone.0: Permission denied
find: /Library/Caches/com.google.UpdateEngine.Framework.0: Permission denied
find: /Library/Logs/Console/501: Permission denied
find: /Library/PreferencePanes/Sybase.prefPane: Permission denied
find: /net/localhost: Operation timed out
find: /net/broadcasthost: Operation timed out
et ceci n'en fini plus
puis
j'ai regardé aux alentours il y a un script pour le démarrage du service MySql qui commence par
/Applications/MAMP/Library/bin/mysqld_safe
sauf que lorsque je met ceci dans mon script j'ai en retour
chown: /Applications/MAMP/db/mysql/auto115.intra.err: Operation not permitted
je vois pas quelle est l'erreur j'ai tenté de mettre le chown sur nbonnet:nbonnet car il était sur nbonnet:admin mais ca marche toujours pas
/Applications/MAMP/Library/bin/mysqld_safe
sauf que lorsque je met ceci dans mon script j'ai en retour
chown: /Applications/MAMP/db/mysql/auto115.intra.err: Operation not permitted
je vois pas quelle est l'erreur j'ai tenté de mettre le chown sur nbonnet:nbonnet car il était sur nbonnet:admin mais ca marche toujours pas
essaye
ls /Applications/MAMP/Library/bin
ou ne serait-ce pas mysql ?
ou find /Applications/MAMP -name mysql -ls
ls /Applications/MAMP/Library/bin
ou ne serait-ce pas mysql ?
ou find /Applications/MAMP -name mysql -ls
il ne me trouve pas non plus mais j'ai trouver en utilisant
/Applications/MAMP/Library/bin/mysqladmin --host=127.0.0.1 --user=nbonnet --port=8889
au lieu de
sql
dans le script cela ne me retourne plus d'erreur sauf qu'il faut que je trouve pas les bonnes options pour me connecter à la base de donnée.
/Applications/MAMP/Library/bin/mysqladmin --host=127.0.0.1 --user=nbonnet --port=8889
au lieu de
sql
dans le script cela ne me retourne plus d'erreur sauf qu'il faut que je trouve pas les bonnes options pour me connecter à la base de donnée.
enfin la solution
printf "SELECT login, nombre FROM adsl"|/Applications/MAMP/Library/bin/mysql -D test_bagotage>test.text
voila la ligne qu'il me faut pour pouvoir reupérer les données de ma table mais dans un fichier text. Il me reste plus qu'a travailler sur ce fichier pour pour utiliser les données
printf "SELECT login, nombre FROM adsl"|/Applications/MAMP/Library/bin/mysql -D test_bagotage>test.text
voila la ligne qu'il me faut pour pouvoir reupérer les données de ma table mais dans un fichier text. Il me reste plus qu'a travailler sur ce fichier pour pour utiliser les données
il faut ajouter /Applications/MAMP/Library/bin dans ton PATH pour appeler simplement mysql:
export PATH=$PATH:/Applications/MAMP/Library/bin
ajouter cette ligne à la fin de .bashrc pour que se soit permanent
export PATH=$PATH:/Applications/MAMP/Library/bin
ajouter cette ligne à la fin de .bashrc pour que se soit permanent
oki merci bien j'ai réussi a me connecter a ma base de donnée et à lancer ma requete. sauf que cette dernière me renvoie un fichier comme ceci :
CLnom STnom ADippublic ADlogin
Scipt equation 10.11.12.13 login
CLnom STnom ADippublic ADlogin
Scipt2 equation2 10.11.12.13 login
J'aimerais bien suprimer les lignes :
CLnom STnom ADippublic ADlogin
je n'arrive pas a faire ma boucle avec un while. Tu peux m'aider pour ceci?
CLnom STnom ADippublic ADlogin
Scipt equation 10.11.12.13 login
CLnom STnom ADippublic ADlogin
Scipt2 equation2 10.11.12.13 login
J'aimerais bien suprimer les lignes :
CLnom STnom ADippublic ADlogin
je n'arrive pas a faire ma boucle avec un while. Tu peux m'aider pour ceci?