Wie überprüfe ich die Anzahl der Benutzer, bevor ich meine Stimme über den Auslöser @ speicher

ch habe zwei Tabellen.Posts, Votes. Ich habe eine Spalte imPosts table namedtotal_votes. Außerdem habe ich einen Auslöser für die Aktualisierung, wenn der Benutzer dem Beitrag eine Stimme gibt.

Hier ist mein Auslöser:

delimiter //
CREATE TRIGGER total_votes AFTER INSERT ON Votes
 FOR EACH ROW begin 
   update posts set total_votes = total_votes+new.value
   where  post.id = new.post_id; 
end //

So muss ich die Anzahl der User überprüfen, die Reputation, dass wenn sie mehr als 50 sind, dann die Abstimmung speichert, sonst wird die Abstimmung nicht gespeichert. wie kann ich das machen

igentlich kann ich das schreiben:BEFORE INSERT

If ((select reputation from users where id = new.user_id) < 50) then
  SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'your rep are low';
end if;

etzt habe ich zwei Probleme: Eins: Wie kann ich diesen Fehler ausnutze (Ihre Repräsentanten sind niedrig) auf meiner Website? (via php) und zwei: Wie kann ich @ deaktiviertotal_votes trigger AFTER INSERT) wenn die obige Bedingung wartrue ?

Antworten auf die Frage(0)

Ihre Antwort auf die Frage