Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
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 16/09/2008, 12h10   #1
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 87
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 87
Points : 13
Points : 13
Par défaut Sql developer figé

Bonjour,

Je dois creer une fonction PL/SQL, et j'utilise Oracle SQL Developer. A chaque fois que je lance la compilation (apres avoir choisi la connection) ... l'editeur est figé, et il ne se passe rien. Tout semble normal sur le gestionnaire des tâches pourtant (pas d'accaparation des ressources par exemple).

Voici le code en question (j'ai peut etre.... surement... ecrit qqch de tellement debile que le compilateur a buggé)

Code :
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
 
CREATE PROCEDURE chargement() IS
BEGIN
 
	DECLARE
		TYPE type_tab_char IS TABLE OF VARCHAR2(60) INDEX BY BINARY_INTEGER ;
		tab_dblinks type_tab := type_tab('db_link_fes','db_link_agadir','db_link_marakech','db_link_meknes','db_link_casa',) ;
		i       pls_integer ;
 
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP				
 
		INSERT INTO client(numclie, cin_clie, typeclie, formjuri, codepays, libepays, codecate, libecate,
		nom_clie, prenclie, nais, adreclie, nom_conj, prenconj, nombenfa, sexecle, sitfamcl, cin_conj)
 
		SELECT numclie, cin_clie, typeclie, formjuri, codepays, libepays, codecate, libecate, nom_clie, prenclie,
		nais, adreclie, nom_conj, prenconj, nombenfa, sexecle, sitfamcl, cin_conj
 
		FROM com_client@||tab_dblinks(i);
 
	END LOOP ;
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO attribution_client(numedoss, codeoper, codtyppr, attr,
		aff, etatdoss, prixcess, atte)
 
		SELECT numedoss, codeoper, codtyppr, attr,
		aff, etatdoss, prixcess, atte
 
		FROM com_attribution_client@||tab_dblinks(i);
 
	END LOOP ;
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO dossier_attribution(numedoss, codeoper, codtyppr, attr, 
		aff, etatdoss, prixcess, atte)
 
		SELECT numedoss, codeoper, codtyppr, attr, 
		aff, etatdoss, prixcess, atte
 
		FROM com_dossier_attribution@||tab_dblinks(i);
 
	END LOOP ;
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO produit(numeprod, codtyppr, codeoper, titrfonc,
		surfprov, surfcada, prixprov, prixdefi)
 
		SELECT com_produit.numeprod@||tab_dblinks(i), com_type_produit.codtyppr@||tab_dblinks(i), com_operation.codeoper@||tab_dblinks(i), com_produit.titrfonc@||tab_dblinks(i), com_produit.surfprov@||tab_dblinks(i), com_produit.surfcada@||tab_dblinks(i), com_produit.prixprov@||tab_dblinks(i), com_produit.prixdefi@||tab_dblinks(i)
 
		FROM com_produit@||tab_dblinks(i), com_type_produit@||tab_dblinks(i), com_operation@||tab_dblinks(i)
 
		WHERE com_produit.codtyppr@||tab_dblinks(i) = com_type_produit.codtyppr@||tab_dblinks(i) AND com_type_produit.codtyppr@||tab_dblinks(i) = com_operation.codtyppr@||tab_dblinks(i);
 
	END LOOP ;
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO com_operation(codeoper, libeoper, numproj, codeante, numoper, desto)
 
		SELECT codeoper, libeoper, numproj, codeante, numoper, desto
 
		FROM com_operation@||tab_dblinks(i);
 
	END LOOP ;
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO agence_regionale(codeante, libeante, typeante, username, password, db_link)
 
		SELECT codeante, libeante, typeante, username, password, db_link
 
		FROM agence_regionale@||tab_dblinks(i);
 
	END LOOP ;
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO echeancier_dossier(numedoss, numligdo, codorgfi, chdo, monteche)
 
		SELECT numedoss, numligdo, codorgfi, chdo, monteche
 
		FROM com_echeanchier_dossier@||tab_dblinks(i);
 
	END LOOP ;		
	COMMIT;
	----------------------------------------------------------------------------------------------------
 
	FOR i IN 0..4 LOOP
 
		INSERT INTO contrat(numedoss, numecont, prixcess, convispa, datremcl, datremno, datrecno,
			datregdi, dasicocl, conetapa, refecont, matragen, typecont)
 
		SELECT numedoss, numecont, prixcess, convispa, datremcl, datremno, datrecno,
			datregdi, dasicocl, conetapa, refecont, matragen, typecont
 
		FROM com_contrat@||tab_dblinks(i);
	END LOOP ;
	COMMIT;
END;
/
Merci d'avance...
abdelhamidem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2008, 12h32   #2
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 459
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 459
Points : 4 226
Points : 4 226
Pas de déclare dans une création de Procédure, c'est implicite dans la partie entre le IS et le BEGIN
Une virgule de trop..

Code :
FROM com_client@||tab_dblinks(i);
Incompilable. Faut passer par de l'EXECUTE_IMMEDIATE.
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2008, 13h25   #3
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 87
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 87
Points : 13
Points : 13
Merci beaucoup pour cette réponse, mais en fait je me suis rendu compte que le problème venait d'ailleurs: J'avais oublié d'executer la création des db link ...

J'ai corrigé les erreurs que tu as indiqué, meme si à la compilation je n'ai pas eu de message les concernants... C'est bizarre, tout ce que j'ai à la fin de la compile c'est
" Warning: exécution terminée avec avertissement
PROCEDURE chargement() Compiled."

et ce, meme apres corrections des erreurs que tu as indiqué
abdelhamidem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2008, 14h59   #4
Expert Confirmé
 
Avatar de 7gyY9w1ZY6ySRgPeaefZ
 
Homme
dba
Inscription : juillet 2007
Messages : 2 523
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Canada

Informations professionnelles :
Activité : dba

Informations forums :
Inscription : juillet 2007
Messages : 2 523
Points : 3 975
Points : 3 975
Normalement, tu as un onglet Messages où il est écrit :
Code :
MACHIN Compiled (WITH errors)
Et tu as un onglet Compiler qui détaille les erreurs comme :
Code :
Error(6,1): PLS-00103: Encountered the symbol "DBMS_OUTPUT" when expecting one of the following:     := . ( @ % ; The symbol ":=" was substituted FOR "DBMS_OUTPUT" TO continue.
7gyY9w1ZY6ySRgPeaefZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2008, 15h12   #5
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 87
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 87
Points : 13
Points : 13
J'ai vu l'onglet "Messages" tout en bas... il n'affiche aucune erreur. J'ai fait des essais en ecrivant n'importe quoi un peu partout dans mon code: aucune réaction.

Par contre, j'ai pas d'onglet compiler... Ils fournissent pas de compilateur avec sql developer??
abdelhamidem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2008, 15h34   #6
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 459
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 459
Points : 4 226
Points : 4 226
J'ai une version 1.1.2.25 et quand je compile un truc qui plante, j'ai bien 2 onglets en bas (dans le Messages - Log) : Messages et Compiler.
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2008, 15h44   #7
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 87
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 87
Points : 13
Points : 13
la suite ici
abdelhamidem 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 05h48.


 
 
 
 
Partenaires

Hébergement Web