Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Outils > Sql*Plus
Sql*Plus Forum d'entraide sur Oracle Sql*Plus
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/11/2007, 10h36   #1
Invité régulier
 
Inscription : mars 2007
Messages : 12
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 12
Points : 6
Points : 6
Par défaut Debutant n'y connaissant rien

Je vous explique ...

Un icone sur le bureau lance le fichier batch suivant :


sqlplus xxxxx/xxxxx@xxxxx @p:\xxxxx\historique.sql


le fichier historique.sql est :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SELECT tc.arn,
    tc.trans_time,                                          
    td.date_time_stamp,
    td.reading1,
    td.reading2,                                            
    tc.trans_type,
    tc.credit_amount/100000 AS montant,                     
    tc.terminal_id,
    td.meter_credit/100000 AS meter_credit,                 
    td.total_cred_inserted/100000 AS total_cred_inserted,   
    td.external_charge/100000 AS external_charge,           
    td.debt_to_pay/100000 AS debt_to_pay,                   
    td.last_debt_charge/100000 AS last_debt_charge,         
    tc.meter_num
FROM trans_common tc, trans_detail td
WHERE tc.trans_num = td.trans_num
AND tc.terminal_id = td.terminal_id
AND tc.arn = '0014114394'
AND tc.trans_type IN (2,8,9)
ORDER BY tc.trans_time DESC
J'aimerais pouvoir avoir une boîte de dialogue (genre input)(ce chiffre pourrait eventuellement être encodé depuis le fichier bat) avant le lancement de cette requête qui me permetterait de changer à volonté le numéro qui est en gras ci-dessus.

Je ne sais pas comment je dois faire et je n 'ai que quelques rudiments en programmation

Si vous pouviez m'aider ce serait gentil.

Merci
pascalcovolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2007, 11h15   #2
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
remplace le numéro par : &mon_numero
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2007, 11h57   #3
Expert Confirmé Sénior


 
Avatar de laurentschneider
 
Homme Laurent Schneider
Administrateur de base de données
Inscription : décembre 2005
Messages : 2 927
Détails du profil
Informations personnelles :
Nom : Homme Laurent Schneider
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Finance

Informations forums :
Inscription : décembre 2005
Messages : 2 927
Points : 4 549
Points : 4 549
oui, ou dans le .bat
Code :
sqlplus xxxxx/xxxxx@xxxxx @p:\xxxxx\historique.sql 0014114394
et dans le .sql
Code :
1
2
3
4
5
SET verify off
SELECT
...
AND tc.arn = '&1'
...
__________________
Mon blog : laurentschneider.com
Mon livre : Advanced Oracle SQL Programming
laurentschneider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2007, 11h59   #4
Expert Confirmé Sénior


 
Avatar de laurentschneider
 
Homme Laurent Schneider
Administrateur de base de données
Inscription : décembre 2005
Messages : 2 927
Détails du profil
Informations personnelles :
Nom : Homme Laurent Schneider
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Finance

Informations forums :
Inscription : décembre 2005
Messages : 2 927
Points : 4 549
Points : 4 549
une approche peut-être plus performante et plus économe en ressources serait, dans le fichier sql :

Code :
1
2
3
4
5
6
7
 
var X varchar2(10)
exec :X := &1
 
SELECT ...
WHERE tc.arn = :X 
...
__________________
Mon blog : laurentschneider.com
Mon livre : Advanced Oracle SQL Programming
laurentschneider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2007, 16h41   #5
Invité régulier
 
Inscription : mars 2007
Messages : 12
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 12
Points : 6
Points : 6
Par défaut Un tout grand merci

La solution numero 1 utilisée me suffit amplement....Mais les propositions développées sont aussi très interessantes. Merci de votre collaboration...

A charge de revanche

Cordialement
pascalcovolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h36.


 
 
 
 
Partenaires

Hébergement Web