I have the following code:
CREATE TRIGGER INSERT_TO_VOTE_UPDATE_SUM_VOTES ON Voting
AFTER UPDATE, INSERT
AS
BEGIN
DECLARE @VOTING_PARTY_ID INT, @SUM_VOTES INT
SELECT @VOTING_PARTY_ID = PoliticalPartyID FROM INSERTED
SELECT @SUM_VOTES = SUM(Votes) FROM Voting WHERE PoliticalPartyID =
@VOTING_PARTY_ID
UPDATE PoliticalParties SET Total=@SUM_VOTES WHERE PoliticalPartyID =
@VOTING_PARTY_ID
END
on SQL Server and i like to create the same trigger on a MySQL Database, i can not seem to declare the variables right or to find the right fields on NEW or OLD table
My attempt is:
CREATE TRIGGER INSERT_TO_VOTE_UPDATE_SUM_VOTES
AFTER INSERT
ON Voting
FOR EACH ROW
BEGIN
DECLARE VOTING_PARTY_ID INT, @SUM_VOTES INT
SELECT @VOTING_PARTY_ID = PoliticalPartyID FROM NEW
SELECT @SUM_VOTES = SUM(Votes) FROM Voting WHERE PoliticalPartyID =
@VOTING_PARTY_ID
UPDATE PoliticalParties SET Total=@SUM_VOTES WHERE PoliticalPartyID =
@VOTING_PARTY_ID
END
[42000][1064] You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax to use near
' @SUM_VOTES INT SELECT @VOTING_PARTY_ID = PoliticalPartyID FROM NEW
SELECT' at line 8