Bonjour,
Je fais une procedure stockée avec mysql et je ne peux utiliser les if else à l'intérieur.
J'utilise la procedure depuis un programme extérieur.
L'idée est pour moi de récuperer le id d'un Tuple si celui-ci existe sinon -1.
Est-ce que quelqu'un peut m'aider pour la syntaxe??
NB Sans le if else la procedure marche tres bien
Voici la procedure :
Merci d'avance
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 DROP PROCEDURE IF EXISTS is_leg_id_in_database; DELIMITER $$ CREATE PROCEDURE is_leg_id_in_database (IN given_airline_cd VARCHAR(3), IN given_flight_nr INT, IN given_arp_dep varchar(3), IN given_arp_arr varchar(3), IN given_time_dep int, IN given_time_arr INT, IN given_op_airline_cd VARCHAR(3), IN given_leg_sequence_nr INT, OUT id_leg INT) BEGIN DECLARE tmp_var INT; SELECT TW_LEG_ID as tmp_var from TW_LEG where AIRLINE_CD = given_airline_cd and FLIGHT_NUMBER = given_flight_nr and DEP_ARP_CD = given_arp_dep and ARR_ARP_CD = given_arp_arr and S_TIME_DEP = given_time_dep and S_TIME_ARR = given_time_arr and OP_AIRLINE_CD = given_op_airline_cd and given_leg_sequence_nr = given_leg_sequence_nr; //************** Ici ce qui ne marche pas IF (tmp_var > 0) then SET id_leg = tmp_var; else SET id_leg = -1; END IF; //****************** END $$ DELIMITER ;
marc_3
Partager