Bonjour,

Je suis débutant dans le Pro*C, et j'essaye de compiler une source afin de voir comment ça marche niveau compilation et développement.

Voilà mon fichier main.c

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
 
 
#include <stdio.h>
#include <errno.h>
#include <string.h>
 
/************************SECTION DE DECLARATION*************************/
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR username[20];
VARCHAR pass[20];
char nom[20];
int num_dem;
 
EXEC SQL END DECLARE SECTION;
 
EXEC SQL INCLUDE sqlca.h; /*traitement des erreurs*/
 
main()
{
 
EXEC SQL WHENEVER SQLERROR continue; /*exemple de gestion d'erreur***/
/******************************CONNEXION*******************************/
 
strcpy( (char *) username.arr, "dbd@liszt");
username.len=9;
strcpy( (char * ) pass.arr, "projet");
pass.len=6;
 
EXEC SQL CONNECT :username IDENTIFIED BY :pass ;
printf("Connecte !\n");
 
printf("nom:"); gets(nom);
 
/**************************REQUETE SQL INTEGREE*************************/
 
EXEC SQL SELECT NUM_DEM INTO :num_dem FROM DEMANDEURS
WHERE NOM=:nom;
 
printf("Nom: %s Num?ro de demandeur:%d \n", nom, num_dem);
 
EXEC SQL COMMIT WORK RELEASE; /* d?connexion de la base de donnees, et
annulation des modifications faites*/
 
exit(0);
}
il ne connait aucune instruction SQL, 50 errurs :
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
 
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|6|error C2061: erreur de syntaxeÿ: identificateur 'SQL'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|6|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|6|error C2061: erreur de syntaxeÿ: identificateur 'DECLARE'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|6|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|7|error C2061: erreur de syntaxeÿ: identificateur 'username'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|7|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|7|error C3409: bloc d'attributs vide non autoris‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|7|error C2143: erreur de syntaxeÿ: absence de ']' avant 'constant'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|8|error C2061: erreur de syntaxeÿ: identificateur 'pass'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|8|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|8|error C3409: bloc d'attributs vide non autoris‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|8|error C2143: erreur de syntaxeÿ: absence de ']' avant 'constant'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|12|error C2061: erreur de syntaxeÿ: identificateur 'SQL'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|12|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|12|error C2061: erreur de syntaxeÿ: identificateur 'DECLARE'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|12|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|14|error C2061: erreur de syntaxeÿ: identificateur 'SQL'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|14|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|14|error C2061: erreur de syntaxeÿ: identificateur 'sqlca'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|14|error C2059: erreur de syntaxeÿ: ';'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|14|error C2059: erreur de syntaxeÿ: '.'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2065: 'EXEC'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'SQL'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2065: 'SQL'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'WHENEVER'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2065: 'WHENEVER'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'SQLERROR'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2065: 'SQLERROR'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2143: erreur de syntaxeÿ: absence de ';' avant 'continue'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|19|error C2044: instruction continue non conforme|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|22|error C2065: 'username'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|22|error C2224: la partie gauche de '.arr' doit avoir un type struct/union|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|22|error C2198: 'strcpy'ÿ: pas assez d'arguments pour un appel|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|23|error C2065: 'username'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|23|error C2224: la partie gauche de '.len' doit avoir un type struct/union|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|24|error C2065: 'pass'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|24|error C2224: la partie gauche de '.arr' doit avoir un type struct/union|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|24|error C2198: 'strcpy'ÿ: pas assez d'arguments pour un appel|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|25|error C2065: 'pass'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|25|error C2224: la partie gauche de '.len' doit avoir un type struct/union|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2065: 'EXEC'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'SQL'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2065: 'SQL'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'CONNECT'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2065: 'username'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'IDENTIFIED'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2065: 'IDENTIFIED'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2146: erreur de syntaxeÿ: absence de ';' avant l'identificateur 'BY'|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|27|error C2065: 'pass'ÿ: identificateur non d‚clar‚|
C:\Users\seanbean\Desktop\Projet Oracle\Oracle\main.c|34|error C2065: 'EXEC'ÿ: identificateur non d‚clar‚|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|

Je développe sous CodeBlocks, et j'ai va version 10g d'Oracle.