|
| 1 | +CREATE VIEW V_CLIENT AS |
| 2 | +SELECT ID_client#, Nom |
| 3 | +FROM CLIENTS |
| 4 | +WHERE ID_client# NOT IN (SELECT DISTINCT ID_client# FROM RESERVATION); |
| 5 | + |
| 6 | +DECLARE |
| 7 | + v_sql VARCHAR2(1000); |
| 8 | +BEGIN |
| 9 | + v_sql := 'CREATE TABLE compte ( |
| 10 | + idcomp NUMBER, |
| 11 | + password VARCHAR2(20) NOT NULL, |
| 12 | + nom VARCHAR2(20) NOT NULL, |
| 13 | + prenom VARCHAR2(20) UNIQUE |
| 14 | + )'; |
| 15 | + EXECUTE IMMEDIATE v_sql; |
| 16 | +END; |
| 17 | + |
| 18 | +SELECT TO_CHAR(Date_maintenance, 'MM') AS Mois, COUNT(*) AS Nombre_de_maintenances |
| 19 | +FROM MAINTENANCES |
| 20 | +GROUP BY TO_CHAR(Date_maintenance, 'MM') |
| 21 | +ORDER BY COUNT(*) DESC |
| 22 | +FETCH FIRST 1 ROW ONLY; |
| 23 | + |
| 24 | +SELECT ID_terrain#, COUNT(*) AS Nombre_de_maintenances |
| 25 | +FROM MAINTENANCES |
| 26 | +GROUP BY ID_terrain#; |
| 27 | + |
| 28 | +SELECT * |
| 29 | +FROM RESERVATION |
| 30 | +WHERE (Heure_fin - Heure_debut) <= 1; |
| 31 | + |
| 32 | +SELECT Heure_debut, Heure_fin |
| 33 | +FROM RESERVATION; |
| 34 | + |
| 35 | +CREATE OR REPLACE PROCEDURE PROC_INSERTION( |
| 36 | + p_ID_reservation IN NUMBER, |
| 37 | + p_Date_reservation IN DATE, |
| 38 | + p_Heure_debut IN DATE, |
| 39 | + p_Heure_fin IN DATE, |
| 40 | + p_ID_terrain# IN NUMBER, |
| 41 | + p_ID_client# IN NUMBER |
| 42 | +) AS |
| 43 | +BEGIN |
| 44 | + INSERT INTO RESERVATION(ID_reservation, Date_reservation, Heure_debut, Heure_fin, ID_terrain#, ID_client#) |
| 45 | + VALUES (p_ID_reservation, p_Date_reservation, p_Heure_debut, p_Heure_fin, p_ID_terrain#, p_ID_client#); |
| 46 | + COMMIT; |
| 47 | +END; |
| 48 | + |
| 49 | +CREATE OR REPLACE FUNCTION FN_NBRE_MAINT(p_ID_terrain# IN NUMBER) RETURN NUMBER IS |
| 50 | + v_count NUMBER; |
| 51 | +BEGIN |
| 52 | + SELECT COUNT(*) INTO v_count |
| 53 | + FROM MAINTENANCES |
| 54 | + WHERE ID_terrain# = p_ID_terrain#; |
| 55 | + RETURN v_count; |
| 56 | +END; |
0 commit comments