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

Sql*Plus Oracle Discussion :

[11g] Comment utiliser SQLPlus comme sous 10g ?


Sujet :

Sql*Plus Oracle

  1. #1
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut [11g] Comment utiliser SQLPlus comme sous 10g ?
    Je viens de changer de poste, et sur le nouveau je me retrouve avec un client 11g (sachant qu'avant, j'avais un client 10g).

    J'ai l'habitude d'utiliser SQLPlus pour faire les livraisons de créations / modifications de structure de tables, ainsi que les créations / modifications de procédures stockées.

    Sous 11g, je découvre que SQLPlus est une fenêtre DOS.

    Questions :
    - En fouillant le net, j'ai cru comprendre que pour se connecter, il faut donner "instance@shéma". C'est bien ça ?
    - Pour les scripts de création / modification de procédures stockées, sous 10g, je faisais [Fichier][Ouvrir] pour me placer dans le répertoire des scripts des procédures, et je les compilais avec "@". Comment faut-il faire maintenant ?
    - Question subsidiaire : pourquoi remplacer un outils qui marchait bien bien, par une fenêtre DOS pas pratique ?


  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 394
    Points
    18 394
    Par défaut
    Vous vous méprenez, SQL*Plus a toujours eu un look "DOS".

    Téléchargez SQL Developer, SQL*Plus c'est surtout un outil pour DBA intégristes ! :-)

  3. #3
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Points : 5 306
    Points
    5 306
    Par défaut
    tu dois faire référence à "sqlplusw.exe" qui a été abandonné en 11g (faut dire que la version graphique était une belle m***e, je n'ai jamais compris pourquoi oracle la maintenait...)

  4. #4
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Ca ne me dit toujours pas comment compiler des procédures stockées.
    Comment exécuter un script dans SQLDevelopper comme avec SQLPlus ?
    Voici un exemple de script :
    @ProcédureMachin;
    @ProcédureTruc;
    @AutreProcédure;
    ...
    SQLDevelopper, je ne m'en sert que pour débuguer des procédures existantes, parce que je n'ai d'autre.
    Sinon, j'évite d'utiliser. Il est beaucoup trop lent et pas pratique.
    Auparavant, j'avais le temps d'ouvrir SQLPlus et de compiler mon script, que SQLDevelopper n'était pas encore ouvert.

    Et sinon, je n'ai pas confiance en SQLDevelopper : ce n'est pas un outil fiable. J'ai eu des bugs à plusieurs reprises : le source des procédures stockées qu'il m'affichait, n'était pas celui des procédures stockées de la base, mais celui de la veille. (fermer et rouvrir SQLDevelopper ni changeait rien).

  5. #5
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    1) supprimer sqlplusw était une vraie boulette à mon sens. Tout ça dans le but de promouvoir sqldeveloper (note: pas besoin de le télécharger, il est inclus avec la base)

    2) effectivement $ORACLE_HOME\bin\sqlplus.exe existe toujours et peut être employé pour lancer tes scripts. Tu le démarres depuis une fenêtre CMD.EXE

    La principale différence entre sqlplusw et sqlplus à mon avis est que sqlplus utilise un autre code page...

    Ex:
    Oracle9i SQLPLUSW.EXE
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SQL>  create table bête(x number);
     
    Table created.
    Oracle11g SQLPLUS.EXE
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SQL> create table bête(x number);
    create table bête(x number)
                  *
    ERROR at line 1:
    ORA-00911: invalid character
    Et puis utiliser sqldeveloper pour lancer des scripts, c'est n'importe quoi, sqldeveloper ne propose même pas de mode command line (donc pour l'avoir dans le scheduler, bonjour).

    > Question subsidiaire : pourquoi remplacer un outils qui marchait bien bien, par une fenêtre DOS pas pratique ?
    toute ma sympathie

  6. #6
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Points : 8 079
    Points
    8 079
    Par défaut
    Citation Envoyé par laurentschneider Voir le message
    1) supprimer sqlplusw était une vraie boulette à mon sens.
    Moi je fais partie de ceux qui n'ont jamais compris à quoi il pouvait bien servir.
    Pas de rappel des dernières commandes, pas de possibilité de ramener le curseur vers la gauche pour corriger, il faut effacer !
    Le seul avantage que je lui voyais, c'était le menu permettant d'accéder aux paramètres SET.

    Et puis sinon, ce qui suit marche très bien en fenêtre DOS, il suffit d'avoir la bon NLS_LANG :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    D:\oracle\ora111\BIN>set nls_lang=french_france.we8pc850
     
    D:\oracle\ora111\BIN>
    D:\oracle\ora111\BIN>sqlplus scott/tiger
     
    SQL*Plus: Release 11.1.0.6.0 - Production on Mar. Juin 21 12:39:20 2011
     
    SQL> create table bête(a int);
     
    Table créée.
    Je trouve qu'il y a beaucoup plus matière à se plaindre du sqlplus sous Unix, où les copier coller multilignes ont un effet dégueulasse, avec les 2 3 4 5 6 qui viennent pourrir l'affichage.

  7. #7
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Citation Envoyé par laurentschneider Voir le message
    1) supprimer sqlplusw était une vraie boulette à mon sens. Tout ça dans le but de promouvoir sqldeveloper
    ...
    toute ma sympathie
    Ca fait plaisir de ne pas être tout seul.

    Citation Envoyé par Pomalaix Voir le message
    Moi je fais partie de ceux qui n'ont jamais compris à quoi il pouvait bien servir.
    Bin, à exécuter des scripts SQL. Il est peut-être pas pratique, mais beaucoup plus fonctionnel que SQLDeveloper.

    >> Et donc, je fais comment pour exécuter mes scripts de compilation de procédure ?

    J'insiste, mais je n'ai toujours pas de solution.
    A croire que personne ne fait de PL/SQL (j'en doute, mais bon).

  8. #8
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    oui, c'est ça, ça employe un autre code page. Ce qui marche pour la table "bête" ne marchera pas pour autant pour les autres scripts, la compatibilité entre code dos et windows n'étant pas 100%...

    Pour Unix, tu peux toujours copier coller en mode silencieux avec

  9. #9
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    Citation Envoyé par Lung Voir le message
    J'insiste, mais je n'ai toujours pas de solution.

    Depuis DOS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    (
    echo @ProcédureMachin
    echo @ProcédureTruc;
    echo @AutreProcédure;
    ) | sqlplus -L scott/tiger@ORCL
    bien sûr il faudra adapter le code page ou appeler ta procédure procedure

  10. #10
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Citation Envoyé par laurentschneider Voir le message
    Depuis DOS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    (
    echo @ProcédureMachin
    echo @ProcédureTruc;
    echo @AutreProcédure;
    ) | sqlplus -L scott/tiger@ORCL
    Voici mon test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     (
     echo @STK_PRE_RESERVE_PRODUIT_RAF;
     echo @STK_RESERVE_PRODUIT;
     echo @STK_SUPPRIME_PIECE_EXT;
     ) | sqlplus -L shema/mdp@info;
    Et voici le résultat :
    echo @STK_PRE_RESERVE_PRODUIT_RAF
    *
    ERREUR Ó la ligne 2 :
    ORA-00928: missing SELECT keyword

  11. #11
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    essaye

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    (
     echo set echo on
     echo @STK_PRE_RESERVE_PRODUIT_RAF;
     echo @STK_RESERVE_PRODUIT;
     echo @STK_SUPPRIME_PIECE_EXT;
     ) | sqlplus -L shema/mdp@info;
    et poste le résultat

  12. #12
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Même chose, apparement :
    echo SET echo ON
    *
    ERREUR Ó la ligne 2 :
    ORA-00928: missing SELECT keyword

  13. #13
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 394
    Points
    18 394
    Par défaut
    Lung, vous exécutez le code depuis SQL Developer ou depuis une fenêtre DOS ?

  14. #14
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    bon, tu lances depuis DOS ou depuis SQLPLUS sous dos?

    Si tu es déjà dans sqlplus, alors
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SET echo ON
    @STK_PRE_RESERVE_PRODUIT_RAF;
    @STK_RESERVE_PRODUIT;
    @STK_SUPPRIME_PIECE_EXT;

  15. #15
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Citation Envoyé par Waldar Voir le message
    Lung, vous exécutez le code depuis SQL Developer ou depuis une fenêtre DOS ?
    Dans SQLPlus sous Dos.
    Mais, je viens de tester dans SQLDevelopper, et j'ai la même erreur.

  16. #16
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Citation Envoyé par laurentschneider Voir le message
    Si tu es déjà dans sqlplus, alors
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SET echo ON
    @STK_PRE_RESERVE_PRODUIT_RAF;
    @STK_RESERVE_PRODUIT;
    @STK_SUPPRIME_PIECE_EXT;
    Cette fois, plus d'erreur sur un select manquant.
    SP2-0310: impossible d'ouvrir le fichier "STK_PRE_RESERVE_PRODUIT_RAF.sql"
    Et si je rajoute le chemin devant, même erreur.

  17. #17
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    tu veux peut-être faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER PROCEDURE STK_PRE_RESERVE_PRODUIT_RAF COMPILE;
    ?

  18. #18
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Je veux pouvoir (comme avant) compiler des fichiers scripts, correspondant chacun à une procédure stockée.
    Le but est d'appliquer le source des fichiers dans la base Oracle (création pour les nouvelles procédures; modification pour les procédures existantes).

    Jusqu'à 10g, SQLPlus (sous Windows) me le permettait facilement.

  19. #19
    Membre expérimenté Avatar de ojo77
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Décembre 2010
    Messages
    680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 680
    Points : 1 597
    Points
    1 597
    Par défaut
    sqlplus (sous DOS) fonctionne comme sqlplusw (mode fenêtré), au code page près.

    Donc si ça na fonctionne pas sous sqlplus ça n'aurait pas fonctionné sous sqlplusw. le problème se situe dans le codes SQL, pas dans l'outil qui le lance.

  20. #20
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 682
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 682
    Points : 7 121
    Points
    7 121
    Par défaut
    Citation Envoyé par ojo77 Voir le message
    sqlplus (sous DOS) fonctionne comme sqlplusw (mode fenêtré), au code page près.
    Non, je ne pense pas.
    Avec SQLPlus (Windows), je peux sélectionner mon répertoire de travail (là où sont tout mes scripts).
    Avec une fenêtre DOS, je ne vois pas comment faire ça.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Comment utiliser le crep sous Delphi ?
    Par da_latifa dans le forum Langage
    Réponses: 1
    Dernier message: 30/01/2008, 13h59
  2. Comment utiliser un joystick sous Delphi 6 ?
    Par PimpW dans le forum API, COM et SDKs
    Réponses: 0
    Dernier message: 12/11/2007, 23h58
  3. comment utiliser mon site sous Xampp
    Par jeha dans le forum Debian
    Réponses: 2
    Dernier message: 01/01/2007, 19h28
  4. Réponses: 13
    Dernier message: 25/04/2006, 10h43
  5. Comment utiliser Site Exec sous FTP
    Par phig dans le forum Développement
    Réponses: 2
    Dernier message: 12/08/2003, 18h11

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