diff --git a/trigger.sql b/trigger.sql
new file mode 100644
index 0000000000000000000000000000000000000000..73cc68247307cb355f079ff29e75909b22522c18
--- /dev/null
+++ b/trigger.sql
@@ -0,0 +1,32 @@
+CREATE TRIGGER max_odometre_atteint AFTER UPDATE OF odometre ON vehicule
+REFERENCING OLD TABLE AS voiture
+WHEN (NEW.odometre >= caracteristiques_vehicule.odometre_max FROM vehicule JOIN caracteristiques_vehicule ON vehicule.type = caracteristiques_vehicule.type)
+EXECUTE FUNCTION vendre_vehicule();
+
+CREATE FUNCTION vendre_vehicule() RETURNS trigger AS $test$
+BEGIN
+    CREATE TABLE avendre (
+        immatriculation TypeImmatriculation,
+        marque TypeTexteCourt,
+        modele TypeTexteCourt,
+        odometre INT NOT NULL,
+        date_mise_en_service DATE NOT NULL,
+        consommation FLOAT NOT NULL,
+        "type" TypeVehicule NOT NULL,
+        kw_recharge FLOAT,
+    );
+    INSERT INTO avendre (
+        SELECT
+        voiture.immatriculation,
+        voiture.marque,
+        voiture.modele,
+        voiture.odometre,
+        voiture.date_mise_en_service,
+        voiture.consommation,
+        voiture.type,
+        voiture.kw_recharge
+        FROM voiture
+    );
+END;
+$test$
+LANGUAGE plpgsql;
\ No newline at end of file