Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Résolu

[Unix] Insérer code SQL dans un script Unix

Trezeg, le lundi 15 janvier 2007 à 10:55:14
Bonjour à tous,
J'aimerais savoir si il était possible d'insérer des lignes de requètes sql à l'intérieur d'un shell unix.
J'ai un batch à traduire en shell unix et je ne sais pas si je peux transposer le passage sql tel quel.
Voici mon batch :

echo set heading off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set space 1 >>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set newpage none>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set flush off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set feed off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set echo off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set verify off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set underline off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo set linesize 100>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

echo spool %SQL4OUT_PROC_ROOT%%PAR4OUT_FILE%%PAR_EXT%>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

echo select rtrim(PARA_GRP)^|^|'.'^|^|rtrim(PARA_EXT)^|^|'.'^|^|PARA_PID^|^|'.'^|^|rtrim(PARA_TYP)^|^|'.'^|^|rtrim(NOM_FICH)^|^|'.'^|^|to_char(sysdate,'YMMDD')^|^|'000000.' from BATITF>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo where CODE = '%1'>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo and TRAI = 'N'>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo -- and TYPE = 3>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%
echo order by DATETRAI, NOM_FICH;>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

echo spool off>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

echo update BATITF set TRAI = 'O', DATETRAI = sysdate where TRAI = 'N' and DATETRAI is null and CODE = '%1' ;>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

echo commit;>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

echo exit;>>%SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

REM LOG
echo %SQL4OUT_PROC_ROOT%%SQL4OUT_FILE%%SQL_EXT%

Merci de votre aide.
Cordialement,
Configuration: SunOS 5.9
Répondre à Trezeg  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Trezeg, le lundi 15 janvier 2007 à 16:06:52
Re-Bonjour,
J'ai trouvé la solution à mon problème ;-)))
Il suffit de mettre des " là où il faut et on arrive à faire générer un ficher sql à notre shell :

echo set heading off>>${SQL4OUT_DIR}sql4out.sql
echo set space 1 >>${SQL4OUT_DIR}sql4out.sql
echo set newpage none>>${SQL4OUT_DIR}sql4out.sql
echo set flush off>>${SQL4OUT_DIR}sql4out.sql
echo set feed off>>${SQL4OUT_DIR}sql4out.sql
echo set echo off>>${SQL4OUT_DIR}sql4out.sql
echo set verify off>>${SQL4OUT_DIR}sql4out.sql
echo set underline off>>${SQL4OUT_DIR}sql4out.sql
echo set linesize 100>>${SQL4OUT_DIR}sql4out.sql

echo spool ${SQL4OUT_DIR}par4out.par>>${SQL4OUT_DIR}sql4out.sql
echo "select rtrim(PARA_GRP)||'.'||rtrim(PARA_EXT)||'.'||PARA_PID||'.'||rtrim(PARA_TYP)||'.'||rtrim(NOM_FICH)||'.'||to_char(sysdate,'YMMDD')||'000000.' from BATITF">>${SQL4OUT_DIR}sql4out.sql
echo where CODE = '%1'>>${SQL4OUT_DIR}sql4out.sql
echo and TRAI = "'N'">>${SQL4OUT_DIR}sql4out.sql
echo "order by DATETRAI, NOM_FICH;">>${SQL4OUT_DIR}sql4out.sql

echo spool off>>${SQL4OUT_DIR}sql4out.sql

echo "update BATITF set TRAI = 'O', DATETRAI = sysdate where TRAI = 'N' and DATETRAI is null and CODE = '%1' ;">>${SQL4OUT_DIR}sql4out.sql
echo "commit;">>${SQL4OUT_DIR}sql4out.sql
echo "exit;">>${SQL4OUT_DIR}sql4out.sql

Voilou.
A+
Répondre à Trezeg

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 Trezeg, le lundi 15 janvier 2007 à 16:11:53
cf ci-dessus
Répondre à Trezeg
Code sql avec amc designer (Résolu) Bonjour, svp je ne sais pas comment obtenir le code sql qui a permit de creer les tables en passant du mcd au mpd si qq1 a une idée,j'en ai vraiment besoin www.commentcamarche.net/forum/affich-7085354-code-sql-avec-amc-designer
[ACCESS]-Problème INSERT (Résolu) Bon ba ma moulinette fonctionne bien et grâce à blux qui m'a pondu tout mon code SQL... J'ai juste un chti message qui me chagrine à l'éxécution d'une requete AJOUT : INSERT INTO EBP ( CODE, LIBELLE, HT ) SELECT CODE, LIBELLE, HT... www.commentcamarche.net/forum/affich-2426228-access-probleme-insert
Requête sql sous vba (Résolu) Bonjour, Je développe un utilitaire sous access, et j'ai besoin d'effectuer une requête sous vba. Il s'agit d'un simple INSERT INTO basé sur les résultats d'une autre requête de sélection. Voici le code : sql1 = "SELECT... www.commentcamarche.net/forum/affich-7739231-requete-sql-sous-vba
Code pour télécommande universelleTélécommande universelle Philips Télécommande universelle Thomson ROC Télécommande universelle All for one Télécommande universelle Star Choice Télécommande universelle Marmitek Télécommande universelle Lifetec LT Télécommande universelle... www.commentcamarche.net/faq/sujet-2469-code-pour-telecommande-universelle
Unidialog - Accès impossibleLe Service Unidialog des Assedic permet à tout moment, partout en France, d'effectuer le traitement immédiat de votre dossier : déclaration de situation mensuelle consultation de votre dossier obtention d'une attestation changement de... www.commentcamarche.net/faq/sujet-8645-unidialog-acces-impossible
Exécuter un script shellExécution d'un script Pour pouvoir exécuter un script ou un programme en ligne de commande il y a plusieurs possibilités : 1. Le chemin absolu 2. Le chemin relatif 3. Modifier la variable PATH Note: Le Sha-Bang Premièrement,... www.commentcamarche.net/faq/sujet-4627-executer-un-script-shell
Script pour compter des lignes de code (Résolu)Slt, Je voudrais réaliser un script en bash ou tcsh peu importe qui compte les lignes effectives d'un code : le script doit donc supprimer les lignes comprises entre un /* et un */ supprimer les lignes commencant par // supprimer les lignes vides... www.commentcamarche.net/forum/affich-2884085-script-pour-compter-des-lignes-de-code
[ACCESS] ins. TOP utilisable avec variable ? (Résolu)Bonjour à tous, je cherche à utiliser la fonction TOP, qui permet de selectionner les x premières lignes d'une table, mais en passant x comme une variable. Sur la base du code SQL suivant (extraction des 3 1eres lignes par ex.) : INSERT INTO... www.commentcamarche.net/forum/affich-2711783-access-ins-top-utilisable-avec-variable
[UNIX] crée un script pour recheche en boucle (Résolu)Bonjour j'ai besoin de votre aide (débutant kornshell UNIX) pour crée un script qui va rechercher en boucle dans le serveur , bon j'ai un serveur de donner qui est schématiser ainsi :... www.commentcamarche.net/forum/affich-3292441-unix-cree-un-script-pour-recheche-en-boucle
Télécharger PHTML EncoderComment protéger jalousement le code script de vos pages quand vous avez mis des nuits blanches à les écrire. La solution existe, PHTML Encoder vous permet de coder les scripts de vos pages afin de les rendre illisible aux yeux des autres. Il permet... www.commentcamarche.net/telecharger/telecharger-34056022-phtml-encoder
PL/SQL - Introduction au langage PL/SQLIntroduction au langage PL/SQL Le langage PL/SQL est un langage L4G (entendez par ce terme un langage de quatrième génération), fournissant une interface procédurale au SGBD Oracle. Le langage PL/SQL intègre parfaitement le langage SQL en lui... www.commentcamarche.net/contents/plsql/plsqlintro.php3
Attaques par injection de commandes SQLInjection de commandes SQL Les attaques par injection de commandes SQL sont des attaques visant les sites web s'appuyant sur des bases de données relationnelles. Dans ce type de sites, des paramètres sont passés à la base de données sous forme... www.commentcamarche.net/contents/attaques/injection-commandes-sql.php3