//TP2

//1
CREATE VIEW VinDesViticulteurs(idVin, Cru, idViticulteur, nomViticulteur)
AS  SELECT numVin, Cru, numVitic, nom
    FROM Vin NATURAL JOIN Viticulteur
    WHERE region = 'BOURGOGNE';

//2
CREATE VIEW BuvCom(numero, nom, nbrCommandes)
AS  (SELECT numBuveur, nom, COUNT(*)
    FROM Buveur NATURAL JOIN Commande
    GROUP BY numBuveur, nom)
    UNION
    (SELECT numBuveur, nom, NULL
    FROM Buveur 
    WHERE numBuveur NOT IN(SELECT numBuveur FROM Commande));
    
INSERT INTO BuvCom VALUES(1750, 'JAMET', null);

UPDATE BuvCom
SET 
WHERE ;

DELETE BuvCom
;

DROP VIEW BuvCom;

//3
SELECT numVitic, nom
FROM Viticulteur NATURAL JOIN Vin NATURAL JOIN Commande;

//4
SELECT numVitic, nom
FROM Vin V NATURAL JOIN Viticulteur
WHERE NOT EXISTS(
    SELECT *
    FROM Commande
    WHERE Commande.numVin = V.numVin);

//5
SELECT 
FROM 
WHERE ;

//6
SELECT 
FROM 
WHERE ;

//7
SELECT 
FROM 
WHERE ;


//TP3
//Q1
//1
ALTER TABLE Buveur ADD CODE_TARIF varchar2(50) DEFAULT 'BASE';

//2
CREATE TABLE Cave_Cooperative(
    NumCav NUMBER PRIMARY KEY,
    Ville_Cav varchar2(30) NOT NULL,
    NumResp NUMBER NOT NULL REFERENCES Viticulteur
);

//3
ALTER TABLE Viticulteur ADD NumCav NUMBER REFERENCES Cave_Cooperative NOT NULL;

//4
INSERT INTO Cave_Cooperative VALUES(10, 'MACON', 01);

//5
INSERT INTO Viticulteur VALUES(40, 'WEISS', 'JACQUES', 'COLMAR', null);
INSERT INTO Cave_Cooperative VALUES(12, 'STRASBOURG', 40);
COMMIT;

//Q2

//1
CREATE TABLE Buveur2(
    NumBuveur NUMBER PRIMARY KEY,
    Nom VARCHAR2(25) NOT NULL,
    Prenom VARCHAR2(25),
    Ville VARCHAR2(30) NOT NULL
);
ALTER TABLE Buveur2 ADD CODE_TARIF varchar2(50) DEFAULT 'BASE';

insert into Buveur2 (select * from raban.buveur);
//2
ALTER TABLE Buveur2 DROP COLUMN Ville;

//3
CREATE TABLE Commande2(
    NumCom NUMBER PRIMARY KEY,
    NumBuveur NUMBER REFERENCES Buveur2,
    NumVin NUMBER REFERENCES Vin,
    Qtte INT NOT NULL,
    DateCom DATE NOT NULL
);

//4
ALTER TABLE Buveur2 DROP COLUMN numBuveur;

//Q3

//1
ALTER TABLE Buveur2 MODIFY Nom varchar2(15);

//2
ALTER TABLE Buveur2 MODIFY Prenom varchar2(5);

//3
ALTER TABLE Buveur2 RENAME COLUMN Nom TO NomBuveur;

//4
ALTER TABLE Buveur2 RENAME COLUMN NumBuveur TO idBuv;

//5
/*Suivant si les données,on peut modifier le type, et on peut modifier le nom*/ 


















