I am trying to make sure a row doesn't exist before inserting but am getting a syntax error, here's my sql:
IF NOT EXISTS
( SELECT *
FROM profile_views
WHERE (profile_view_user = ?
AND profile_view_viewing = ?)
)
BEGIN
INSERT INTO profile_views
(
profile_view_user,
profile_view_viewing,
profile_view_ip
)
VALUES
(
?,
?,
?
)
END;
CREATE TABLE IF NOT EXISTS `profile_views` (
`profile_view_id` int(11) NOT NULL,
`profile_view_user` int(11) NOT NULL,
`profile_view_viewing` int(11) NOT NULL,
`profile_view_date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`profile_view_ip` varchar(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
My error I am getting is:
Warning: PDOStatement::execute(): SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS ( SELECT * FROM profile_views WHERE (pro' at line 1 i
How do I fix my sql query?