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

Oracle Discussion :

sql developper ?


Sujet :

Oracle

  1. #1
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 319
    Points : 80
    Points
    80
    Par défaut sql developper ?
    salut,

    Sous sqlplus quand je voulais faire du pl/sql
    je faisais un edit monfichier.

    Je tapai mon code dans se fichier ( declare ...begin ...end;/)
    et ensuite sous sqlplus je faisais @monfichier et sa l'executait.

    Mais sous oracle sql developer commetn fair ?
    Quand je saisis mon code et que je l'execute j'ai ce message
    anonymous block completed
    ???
    et rien d 'autre ?
    est ce normal ?

    Merci

  2. #2
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Le code est sensé faire quoi ?
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  3. #3
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 319
    Points : 80
    Points
    80
    Par défaut
    il est censer afficher null si le type de la colonne est a not null

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    declare
    cursor curs is select column_name,nullable from user_tab_columns where table_name='TEST1';
    cursi curs%rowtype;
    begin
    for cursi in curs loop
     if cursi.nullable='N' then
    dbms_output.put_line('not null');
      end if;
    end loop;
    end;

  4. #4
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut
    j'ai fait le test suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    begin
     DBMS_OUTPUT.PUT_LINE('test');
    end;
    voici le resultat obtenu dans l'onglet dbms Output
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    anonymous block completed
    test
    il affiche le resultat mais le message anonymous block completed je ne sais pas à quoi sert ici ?

    remarque il faut activer le bouton enable dbms Output

  5. #5
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Dbms_output s'affiche dans l'onglet.....

    .... DBMS Output !!!

    Bien le rendre enable au début (cliquer sur l'icône bulle)
    Rédacteur Oracle (Oracle ACE)
    Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche
    Je ne réponds pas aux questions techniques par MP
    Blogs: Forms-PL/SQL-J2EE - Forms Java Beans

  6. #6
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 319
    Points : 80
    Points
    80
    Par défaut
    exact c'est bien cela jte remercie
    mais ce que je ne comprends est que mon code seule fonctionne et quand je l'integere à mon curseur bin ça ne marche plus

    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
    16
    17
    18
    create or replace trigger xtest1 
    before insert on  test1
    for each row
    declare
    cursor curs is select column_name,nullable from user_tab_columns where table_name='TEST1';
    cursi curs%rowtype;
    begin
    for cursi in curs loop
     if cursi.nullable='N' then
     dbms_output.put_line('NOT NULL');
      if length(:NEW.column_name)>0 then
        :NEW.column_name:=:NEW.column_name;
      else
        :NEW.column_name:='''''';
      end if;
     end if;
    end loop;
    end;

    im me dit que ce n'est pas valide
    Error starting at line 1 in command:
    insert into test1 (clé,charcol) values (6,null)
    Error at Command Line:1 Column:12
    Error report:
    SQL Error: ORA-04098: trigger 'ZIP.XTEST1' is invalid and failed re-validation

  7. #7
    Membre habitué
    Inscrit en
    Août 2006
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 181
    Points : 166
    Points
    166
    Par défaut
    ton trigger passe à la commpilation ?

  8. #8
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 319
    Points : 80
    Points
    80
    Par défaut
    ouai quand je le compile
    j'ai cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trigger xtest1 Compiled.

  9. #9
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 319
    Points : 80
    Points
    80
    Par défaut
    personne n'a d'idée

  10. #10
    Membre éprouvé
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Points : 1 294
    Points
    1 294
    Par défaut
    non, ton trigger ne doit pas compiler, tu tourne toujours autour du meme problème, tu ne peux pas dans la syntaxe du :NEW lui passer une variable contenant le nom de la colonne...

  11. #11
    Membre régulier
    Inscrit en
    Mars 2005
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 319
    Points : 80
    Points
    80
    Par défaut
    je peux juste lui passer le nom de la colonne en dure, sans plus

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/03/2007, 19h56
  2. Oracle 10g / SQL Developper
    Par guil1230 dans le forum Oracle
    Réponses: 5
    Dernier message: 05/03/2007, 17h11
  3. connecter sql developper
    Par developman dans le forum Oracle
    Réponses: 2
    Dernier message: 07/02/2007, 12h35
  4. utilisation de sql developper
    Par donny dans le forum Oracle
    Réponses: 4
    Dernier message: 16/08/2006, 17h23
  5. Réponses: 2
    Dernier message: 28/12/2005, 11h54

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