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

PL/SQL Oracle Discussion :

Problème PL/SQL Oracle 8


Sujet :

PL/SQL Oracle

  1. #1
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut Problème PL/SQL Oracle 8
    salut,

    je pense que j'ai un soucis de syntaxe dans ma requete PL/SQL, mais je ne vois pas d'ou cela pourrait venir.
    Je suis bloqué la dessus depuis 2 jours, est-ce que quun pourrait m'aider.
    Comme je débute en PL/SQL je ne connais pas encore les subtilité du langage...

    Voici mon message d'erreur :

    Numéro de ligne = 1 Numéro de colonne = 37 Texte d'erreur = PLS-00103: Symbole "DECLARE" rencontré à la place d'un des symboles suivants : ( ; is with authid as cluster compress order using compiled wrapped external deterministic parallel_enable pipelined


    et voici une partie de la requete que j'aimerais avoir en procédure stocké sur Oracle :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    declare
    	-- Dans la variable utf mettre la valeur de lutf choisie ou une liste dutf spéparées par des virgules
    	utf varchar2(255) := '21416';
     
    	-- Variables
    	j	number;
    	taille varchar2(255) := '';
    	coloris varchar2(255) := '';
    	codeBarre varchar2(255) := '';
    	temp varchar2(255) := '';
     
    	cursor getStock IS
    		SELECT	UTF_IDTUTF, UTF_LIB, UTF_DESCR, ART_TYPE, fab_raisoc, utf_idtutf_pere, fou_lib, mar_lib, art_reffab, art_idtart, art_lib, ray_lib, tym_lib, fmm_lib, mam_lib, srt_physique, srt_reserve, NVL((SRT_PHYSIQUE - SRT_RESERVE), 0) as dispo, srt_qtepeniche, srt_qtepropfour, srt_qtepropfourreserv, srt_qtecdefour, srt_qtecdefourreserv, srt_pamp 
    		FROM ref_tg_lien_art_sto_utf
     				INNER JOIN ref_tg_article ON ART_IDTART = ART_STO_UTF_IDTART  
     				INNER JOIN REF_TG_STOART ON SRT_IDTART = ART_STO_UTF_IDTART 
     					  AND SRT_IDTSTO = ART_STO_UTF_IDTSTO 
     					  AND SRT_IDTUTF = ART_STO_UTF_IDTUTF
    				INNER JOIN ref_tg_unitefonctionnelle ON UTF_IDTUTF = ART_STO_UTF_IDTUTF
    				INNER JOIN ref_op_fabricant ON art_idtfab = fab_idtfab
    				INNER JOIN ref_op_lien_fou_ucd_art_tarif ON fat_idtart = art_idtart
    					AND fat_ordre = 1
    					AND fat_valide = 1
    					AND fat_datedeb <= SYSDATE
    					AND (fat_datefin >= SYSDATE OR fat_datefin IS NULL)
    				INNER JOIN ref_tg_fournisseur ON fou_idtfou = fat_idtfou
    				LEFT JOIN ref_op_marque ON art_idtmar = mar_idtmar
    				LEFT JOIN ref_op_rayon ON art_idtray = ray_idtray
    				LEFT JOIN ref_op_typemonture ON art_idttym = tym_idttym
    				LEFT JOIN ref_op_famillemonture ON art_idtfmm = fmm_idtfmm
    				LEFT JOIN ref_op_materiaumonture ON art_idtmam = mam_idtmam
    		WHERE art_sto_utf_idtutf IN('21416')
    			  AND art_type IN ('MON', 'DIV')
    			  AND (art_datefinvie >= SYSDATE OR art_datefinvie IS NULL)
    			AND fmm_lib IN ('Percée');
     
    BEGIN ... etc...

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Si vous voulez mettre votre code en procédure stockée que je suppose sans paramètre, il faut écrire sans DECLARE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE OR REPLACE PROCEDURE myproc 
    [IS | AS ]
    < déclarer vos variables sans le mot clé DECLARE>
    BEGIN
    <le code de votre procédure>
    END;
    L'utilisation de DECLARE est réservée à des blocs PL/SQL anonymes = du code qui n'est pas dans une procédure ou une fonction.

  3. #3
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL-SQL
    Merci, je vais travailler la dessus

  4. #4
    Membre émérite Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Par défaut
    si tu crées une procédure (ou une fonction), enlève le mot DECLARE.
    la déclaration des variables, curseurs etc se fait directement après le mot clef AS (ou IS).

    DECLARE n'est valable que pour débuter un bloc anonyme.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Create or replace MaProcedure ( nParam1 IN Number)
    AS
        /* ici je déclare mes variables */
        Var1    Number ;
    Begin
        ....
    End ;

    EDIT :
    Damn !!! coiffé au poteau !

  5. #5
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL-SQL
    OUULA ...

    Je comprend pas tout ...

    j'ai enlever le DECLARE, mais maintenant j'ai d'autres erreurs.

    voila le code modifié (je pense qu'il y a d'autres erreurs) :



    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    CREATE OR REPLACE PROCEDURE statstock
     
     
     -- Dans la variable utf mettre la valeur de lutf choisie ou une liste dutf spéparées par des virgules
    	utf varchar2(255) := '21416';
     
    	-- Variables
    	j	number;
    	taille varchar2(255) := '';
    	coloris varchar2(255) := '';
    	codeBarre varchar2(255) := '';
    	temp varchar2(255) := '';)
     
    	cursor getStock IS
    		SELECT	UTF_IDTUTF, UTF_LIB, UTF_DESCR, ART_TYPE, fab_raisoc, utf_idtutf_pere, fou_lib, mar_lib, art_reffab, art_idtart, art_lib, ray_lib, tym_lib, fmm_lib, mam_lib, srt_physique, srt_reserve, NVL((SRT_PHYSIQUE - SRT_RESERVE), 0) as dispo, srt_qtepeniche, srt_qtepropfour, srt_qtepropfourreserv, srt_qtecdefour, srt_qtecdefourreserv, srt_pamp 
    		FROM ref_tg_lien_art_sto_utf
     				INNER JOIN ref_tg_article ON ART_IDTART = ART_STO_UTF_IDTART  
     				INNER JOIN REF_TG_STOART ON SRT_IDTART = ART_STO_UTF_IDTART 
     					  AND SRT_IDTSTO = ART_STO_UTF_IDTSTO 
     					  AND SRT_IDTUTF = ART_STO_UTF_IDTUTF
    				INNER JOIN ref_tg_unitefonctionnelle ON UTF_IDTUTF = ART_STO_UTF_IDTUTF
    				INNER JOIN ref_op_fabricant ON art_idtfab = fab_idtfab
    				INNER JOIN ref_op_lien_fou_ucd_art_tarif ON fat_idtart = art_idtart
    					AND fat_ordre = 1
    					AND fat_valide = 1
    					AND fat_datedeb <= SYSDATE
    					AND (fat_datefin >= SYSDATE OR fat_datefin IS NULL)
    				INNER JOIN ref_tg_fournisseur ON fou_idtfou = fat_idtfou
    				LEFT JOIN ref_op_marque ON art_idtmar = mar_idtmar
    				LEFT JOIN ref_op_rayon ON art_idtray = ray_idtray
    				LEFT JOIN ref_op_typemonture ON art_idttym = tym_idttym
    				LEFT JOIN ref_op_famillemonture ON art_idtfmm = fmm_idtfmm
    				LEFT JOIN ref_op_materiaumonture ON art_idtmam = mam_idtmam
    		WHERE art_sto_utf_idtutf IN(utf)
    			  AND art_type IN ('MON', 'DIV')
    			  AND (art_datefinvie >= SYSDATE OR art_datefinvie IS NULL)
    			AND fmm_lib IN ('Percée');
     
    BEGIN

  6. #6
    Membre émérite Avatar de Yorglaa
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    845
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2004
    Messages : 845
    Par défaut
    il manque le mot clef IS ou AS (n'importe lequel, ça revient au même)

    CREATE OR REPLACE PROCEDURE statstock
    AS
    ...
    EDIT :

    et tu as une parenthèse de trop à la fin de la déclaration de la variable temp

  7. #7
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL-SQL ...
    ... on avance mais ça marche pas encore .

    Voici la nouvelle erreur :

    Numéro de ligne = 1 Numéro de colonne = 37 Texte d'erreur = PLS-00103: Symbole "CREATE" rencontré à la place d'un des symboles suivants : ( ; is with authid as cluster compress order using compiled wrapped external deterministic parallel_enable pipelined

    Pour ce code : (en entier cette fois ci)

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
     
     
    CREATE OR REPLACE PROCEDURE statstock
     IS
     
    	utf varchar2(255) := '21416';
     
     
    	j	number;
    	taille varchar2(255) := '';
    	coloris varchar2(255) := '';
    	codeBarre varchar2(255) := '';
    	temp varchar2(255) := '';
     
    	cursor getStock IS
    		SELECT	UTF_IDTUTF, UTF_LIB, UTF_DESCR, ART_TYPE, fab_raisoc, utf_idtutf_pere, fou_lib, mar_lib, art_reffab, art_idtart, art_lib, ray_lib, tym_lib, fmm_lib, mam_lib, srt_physique, srt_reserve, NVL((SRT_PHYSIQUE - SRT_RESERVE), 0) as dispo, srt_qtepeniche, srt_qtepropfour, srt_qtepropfourreserv, srt_qtecdefour, srt_qtecdefourreserv, srt_pamp 
    		FROM ref_tg_lien_art_sto_utf
     				INNER JOIN ref_tg_article ON ART_IDTART = ART_STO_UTF_IDTART  
     				INNER JOIN REF_TG_STOART ON SRT_IDTART = ART_STO_UTF_IDTART 
     					  AND SRT_IDTSTO = ART_STO_UTF_IDTSTO 
     					  AND SRT_IDTUTF = ART_STO_UTF_IDTUTF
    				INNER JOIN ref_tg_unitefonctionnelle ON UTF_IDTUTF = ART_STO_UTF_IDTUTF
    				INNER JOIN ref_op_fabricant ON art_idtfab = fab_idtfab
    				INNER JOIN ref_op_lien_fou_ucd_art_tarif ON fat_idtart = art_idtart
    					AND fat_ordre = 1
    					AND fat_valide = 1
    					AND fat_datedeb <= SYSDATE
    					AND (fat_datefin >= SYSDATE OR fat_datefin IS NULL)
    				INNER JOIN ref_tg_fournisseur ON fou_idtfou = fat_idtfou
    				LEFT JOIN ref_op_marque ON art_idtmar = mar_idtmar
    				LEFT JOIN ref_op_rayon ON art_idtray = ray_idtray
    				LEFT JOIN ref_op_typemonture ON art_idttym = tym_idttym
    				LEFT JOIN ref_op_famillemonture ON art_idtfmm = fmm_idtfmm
    				LEFT JOIN ref_op_materiaumonture ON art_idtmam = mam_idtmam
    		WHERE art_sto_utf_idtutf IN(utf)
    			  AND art_type IN ('MON', 'DIV')
    			  AND (art_datefinvie >= SYSDATE OR art_datefinvie IS NULL)
    			AND fmm_lib IN ('Percée');
     
    BEGIN
    	dbms_output.enable(10000000000000);
    	dbms_output.put_line( 'Code entité' || ';' || 'Lib. Entité' || ';' || 'Type Art.' || ';' || 'Fab.' || ';' || 'Fou.'  || ';' || 'Marque'  || ';' || 'Réf. Fab.'  || ';' || 'Réf. PVO'  || ';' || 'Désignation'  || ';' || 'Rayon'  || ';' || 'Type Monture'  || ';' || 'Famille' || ';' || 'Taille' || ';' || 'Coloris'  || ';' || 'Matériau' || ';' || 'Code-Barres' || ';' || 'Qté phys.' || ';' || 'Qté réservée' || ';' || 'Qté dispo' || ';' || 'Qté en péniche' || ';' || 'Prop. cde qté' || ';' || 'Prop cde réservée' || ';' || 'Cde qté' || ';' || 'Cde réservée' || ';' || 'Val.'   );
    	For j in getStock loop
     
    		if to_char(j.ART_TYPE) = 'MON' then
    			SELECT NVL(CAA_ART_LIBVAL, '')
    			INTO taille
    			FROM REF_OP_CARA_ARTICLE, REF_OP_LIEN_CAA_ART
    			WHERE CAA_ART_IDTCAA = CAA_IDTCAA
    				AND CAA_ART_VALIDE = 1 
    				AND CAA_VALIDE = 1 
    				AND CAA_LIBCOURT='TAILLEMON'
    				AND CAA_ART_IDTART= j.art_idtart;
    		else
    			taille := '';
    		end if;
     
    		begin
    			SELECT CAA_ART_LIBVAL
    			INTO coloris
    			FROM REF_OP_CARA_ARTICLE, REF_OP_LIEN_CAA_ART
    			WHERE CAA_ART_IDTCAA = CAA_IDTCAA
    				AND CAA_ART_VALIDE = 1 
    				AND CAA_VALIDE = 1 
    				AND CAA_LIBCOURT='COLORIMON'
    				AND CAA_ART_IDTART = j.art_idtart;				
    		exception
    			when no_data_found then
    						coloris := '';	
    		end;
     
    		begin
    			SELECT MAX(PRD_IDTPRD)
    			INTO codeBarre
    			FROM REF_OP_PRODUIT 
    			WHERE PRD_VALIDE = 1 
    				AND PRD_DATEDEB <= SYSDATE  
    				AND (PRD_DATEFIN >= SYSDATE OR PRD_DATEFIN IS NULL)
    				AND PRD_IDTART = j.art_idtart
    				AND PRD_IDTUTF = j.UTF_IDTUTF;				
    		exception
    			when no_data_found then
    				 codeBarre := '';	
    		end;
     
    		if codebarre IS NULL or codebarre = '' then
    			begin
     
    				SELECT MAX(PRD_IDTPRD)
    				INTO codeBarre
    				FROM REF_OP_PRODUIT 
    				WHERE PRD_VALIDE = 1 
    					AND PRD_DATEDEB <= SYSDATE  
    					AND (PRD_DATEFIN >= SYSDATE OR PRD_DATEFIN IS NULL)
    					AND PRD_IDTART = j.art_idtart
    					AND PRD_IDTUTF = j.UTF_IDTUTF_PERE;								
    			exception
    				when no_data_found then
    					 codeBarre := '';	
    			end;
     
    			if codebarre IS NULL or codebarre = '' then
    				begin
    					SELECT UTF_IDTUTF_PERE
    					INTO temp
    					FROM ref_tg_unitefonctionnelle 
    					WHERE UTF_IDTUTF = j.UTF_IDTUTF_PERE;
     
    					begin
    						SELECT MAX(PRD_IDTPRD)
    						INTO codeBarre
    						FROM REF_OP_PRODUIT 
    						WHERE PRD_VALIDE = 1 
    							AND PRD_DATEDEB <= SYSDATE  
    							AND (PRD_DATEFIN >= SYSDATE OR PRD_DATEFIN IS NULL)
    							AND PRD_IDTART = j.art_idtart
    							AND PRD_IDTUTF = temp;										
    					exception
    						when no_data_found then
    							 codeBarre := '';	
    					end;									
    				exception
    					when no_data_found then
    						 codeBarre := '';	
    				end;
    			end if;
     
    		end if;
    		dbms_output.put_line( replace(to_char(j.UTF_IDTUTF), ';', ' ') || ';' || replace(to_char(j.UTF_DESCR), ';', ' ') || ';' || replace(to_char(j.ART_TYPE), ';', ' ') || ';' || replace(to_char(j.FAB_RAISOC), ';', ' ') || ';' || replace(to_char(j.fou_lib), ';', ' ')  || ';' || replace(to_char(j.mar_lib), ';', ' ')  || ';' || replace(to_char(j.art_reffab), ';', ' ')  || ';' || replace(to_char(j.art_idtart), ';', ' ')  || ';' || replace(to_char(j.art_lib), ';', ' ')  || ';' || replace(to_char(j.ray_lib), ';', ' ')  || ';' || replace(to_char(j.tym_lib), ';', ' ')  || ';' || replace(to_char(j.fmm_lib), ';', ' ') || ';' || replace(taille, ';', ' ') || ';' || replace(coloris, ';', ' ')  || ';' || replace(to_char(j.mam_lib), ';', ' ') || ';' || replace(codebarre, ';', ' ') || ';' || replace(to_char(j.srt_physique), ';', ' ') || ';' || replace(to_char(j.srt_reserve), ';', ' ') || ';' || replace(to_char(j.dispo), ';', ' ') || ';' || replace(to_char(j.srt_qtepeniche), ';', ' ') || ';' || replace(to_char(j.srt_qtepropfour), ';', ' ') || ';' || replace(to_char(j.srt_qtepropfourreserv), ';', ' ') || ';' || replace(to_char(j.srt_qtecdefour), ';', ' ') || ';' || replace(to_char(j.srt_qtecdefourreserv), ';', ' ') || ';' || replace(to_char(j.srt_pamp), ';', ' ')   );
    	End Loop;
    	null;
    END;

  8. #8
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Vous avez peut-être un problème avec quelque chose qui est avant CREATE PROCEDURE ? Est-ce qu'il y a quelque chose avant CREATE PROCEDURE dans votre buffer sqlplus ou autre ?

  9. #9
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL-SQL
    Je ne connais pas trop SQL plus ,
    qu'entendez-vous par Buffer ?

    Sinon dans mon code il n'y a rien devant CREATE

    Merci d'avance

  10. #10
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Le buffer sqlplus contient ce qui va être exécuté.
    Quel est l'outil que vous utilisez pour créer la procédure PL/SQL ?

    Vous pouvez essayer avec sqlplus de mettre votre code dans un fichier p.sql en ajoutant un "/" sur une ligne séparée tout à la fin
    et de l'exécuter avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sqlplus <compte>/<mot de passe>@<instance> @p.sql

  11. #11
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Peut-être que votre outil génére les motd clés suivants "CREATE PROCEDURE statproc IS" d'où l'erreur. Peut-être devez-vous supprimer ces mots clés avec votre outil ?

  12. #12
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL-SQL
    J'utilise ça (je connais pas le nom mais ce n'est pas SQL plus) cependant ça reste dans ORACLE :

    j'ouvre Entreprise Manager Console \ Base de Donnée \ " ma base " \ Schema \ " mon objet de base " \ Type de ressource \ Procédure \ ...
    a cet endroit j'ai la possibilité de faire une procédure

    Voila

  13. #13
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL-SQL
    C'est ok, j'arrive a lancer SQL Plus Worksheet (c'est bien ça dont on parle ?)

    Je me connecte a ma base, il me met dans la partie du bas : connecté

    Je colle ma requete et la j'ai des erreur et il se déconnecte, voila les erreurs :

    Connecté.
    ERROR:
    ORA-01017: invalid username/password; logon denied


    Avertissement : vous n'êtes plus connecté à ORACLE.
    SP2-0640: Non connecté

    Voila, merci pour l'aide déja apporté

  14. #14
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Je n'ai pas les outils que vous avez cité.

    SQLPlus worksheet est une nouvelle interface web à sqlplus.

    Le sqlplus dont je vous parle est le plus simple, celui en ligne de commande que l'on utilise en général pour faire des installations.
    Ce sqlplus est utilisable dans une fenêtre de commande cmd.exe.

  15. #15
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL/SQL
    Bonjour,

    excusez moi je n'ai pu repondre a votre message avant ce matin,

    J'ai bien trouvé la version de SQL + dont vous me parlez (tout en ligne de commande), par contre je ne vois pas vraiment comment cela fonctionne ?

    Merci d'avance

  16. #16
    Membre Expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Par défaut
    Pour les premiers pas, avec sqlplus voir:
    http://www.iro.umontreal.ca/~lokbani...08/demo08.html

    Pour exécuter votre script, voir mon message du Mar Mar 14, 2006 16:27.

  17. #17
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL/SQL
    Ok,

    j'ai testé une partie de ma requete avec SQL + (la petite partie du select au début) , ça fonctionne bien

    Par contre si je copie mon bloc complet comme cité mardi, je n'ai aucunes réponses de SQL +...

    Je creuse, merci encore pour votre aide

  18. #18
    kh
    kh est déconnecté
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    Bonjour;

    Aprés le point-virgule final
    Ajouter "/" au début de la ligne suivante et réessayer

    [code]
    .
    .
    .
    END;
    /
    &#91;code&#93;&#91;/code&#93;

  19. #19
    kh
    kh est déconnecté
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    Désolé pour la faute

    je fais mes premiers pas sur le forum

    aprés le ; final
    ajouter "/" au début de la ligne suivante et réessayer


  20. #20
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 21
    Par défaut PL/SQL
    Alors, ça y est SQL + me dis que ma requete réussi

    J'avais effectivement oublié le fameux " / " (que je sais pas a quoi il sert, mais il sert...)

    Maitenant j'ai plus qu'a coder mon appel a cette Procédure en PHP, je sais pas comment faire , mais on va bien voir ...

Discussions similaires

  1. Problème requête SQL (Oracle -> MySQL)
    Par iliass001 dans le forum Requêtes
    Réponses: 1
    Dernier message: 10/04/2013, 09h10
  2. Problème requête SQL (Oracle -> MySQL)
    Par iliass001 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 08/04/2013, 16h21
  3. Problème PL/SQL Oracle
    Par bcy dans le forum PL/SQL
    Réponses: 4
    Dernier message: 20/05/2011, 10h36
  4. Problème requete SQL Oracle
    Par Yassoubxl dans le forum SQL
    Réponses: 4
    Dernier message: 04/02/2008, 16h51
  5. SQL + problème de buffer-oracle version 8.1.7
    Par new_wave dans le forum Oracle
    Réponses: 4
    Dernier message: 21/11/2005, 14h51

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