workbook to create triggers and procedures

fernand.st-georges@protonmail.com's profile image fernand.st-georges@protonmail.com posted 4 years ago in General Permalink

Hi I need help like links or documents to understand how to create triggers with this version of MySQL Thanks Fern

fernand.st-georges@protonmail.com's profile image fernand.st-georges@protonmail.com posted 4 years ago Permalink

If I want to create a trigger in My SQL that is similar to SQl Server

USE [NTI] GO /** Object: Trigger [dbo].[NOUVELLE_LIGNE_TRANS] Script Date: 10/déc./2020 08:33:19 **/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER TRIGGER [dbo].[NOUVELLE_LIGNE_TRANS] ON [dbo].[LIGNE_TRANSACTION] FOR INSERT as

DECLARE @nb_heure float, @tarif_analyste float, @montant_sous_total float, @sous_total float, @taux_tvq_maj float, @taux_tps_maj float

/ Sélectionner le taux de taxe / SELECT @taux_tps_maj = [TAXE].TPS FROM TAXE

SELECT @taux_tvq_maj = [TAXE].TVQ FROM TAXE

/ Sélectionner le total de la ligne de transaction qui vient d'être inscrit / SELECT @montant_sous_total = TOTAL FROM inserted LIGNE_TRANSACTION

/ Sélectionner le nombre d'heures inscrits sur la ligne de transaction / SELECT @nb_heure = NB_HEURES FROM inserted LIGNE_TRANSACTION

/ Sélectionner le sous-total de la transaction / SELECT @sous_total = SOUS_TOTAL FROM [TRANSACTION] join [LIGNE_TRANSACTION] on [TRANSACTION].NUMERO_TRANSACTION = [LIGNE_TRANSACTION].NUMERO_TRANSACTION join inserted ON inserted.NUMERO_LIGNE = [LIGNE_TRANSACTION].NUMERO_LIGNE

/ Sélectionner le tarfi de l'analyste / SELECT @tarif_analyste = PRIX FROM [PRODUIT]

join [LIGNE_TRANSACTION] on [PRODUIT].NUMERO_PRODUIT = [LIGNE_TRANSACTION].NUMERO_PRODUIT

join inserted ON inserted.NUMERO_LIGNE = [LIGNE_TRANSACTION].NUMERO_LIGNE

/ Inscrire la total de la ligne de transaction en multipliant le tarif de l'analyste par le nombre d'heures effectuées / UPDATE [LIGNE_TRANSACTION] SET TOTAL = @nb_heure * @tarif_analyste FROM [LIGNE_TRANSACTION] join [TRANSACTION] on [LIGNE_TRANSACTION].NUMERO_TRANSACTION = [TRANSACTION].NUMERO_TRANSACTION join inserted ON inserted.NUMERO_LIGNE = [LIGNE_TRANSACTION] .NUMERO_LIGNE

/ Procéder à la mise à jour de la transaction en additionnant le total de chacune des lignes de transactions / UPDATE [TRANSACTION] SET SOUS_TOTAL = (@sous_total +(@nb_heure @tarif_analyste)), TPS = (@taux_tps_maj (@sous_total +(@nb_heure @tarif_analyste))), TVQ = (((@sous_total +(@nb_heure @tarif_analyste)) + (@taux_tps_maj (@sous_total +(@nb_heure @tarif_analyste)))) @taux_tvq_maj), TOTAL = (@sous_total +(@nb_heure @tarif_analyste)) + (@taux_tps_maj (@sous_total +(@nb_heure @tarif_analyste))) + (((@sous_total +(@nb_heure @tarif_analyste)) + (@taux_tps_maj (@sous_total +(@nb_heure @tarif_analyste)))) @taux_tvq_maj)

FROM [LIGNE_TRANSACTION]
    join [TRANSACTION] on [LIGNE_TRANSACTION].NUMERO_TRANSACTION = [TRANSACTION].NUMERO_TRANSACTION
      join inserted  ON inserted.NUMERO_LIGNE = [LIGNE_TRANSACTION] .NUMERO_LIGNE

Please login to leave a reply, or register at first.