如果不存在则创建触发器

时间:2019-12-02 01:48:13

标签: sql eclipse jdbc

我正在尝试在我的Eclipse编程中实现触发器语句,该触发器已在mysql工作台中创建,因此在运行代码时会引发错误。如果触发器语句不存在,您可以做吗?

我的触发器

"CREATE DEFINER=`root`@`localhost` TRIGGER `video_BEFORE_INSERT` BEFORE INSERT ON `video` FOR EACH ROW BEGIN " +
              "IF ( 5 =  (SELECT count(*) from video R " +
                   " where R.userid = NEW.userid AND    DATE(date) = NEW.date) ) THEN   SIGNAL SQLSTATE '45000'; " +
                " END IF; " +
              "END"; // 

我尝试了这个,但是显然我的语法是不正确的。

"IF OBJECT_ID(N'[dbo].[`video_BEFORE_INSERT]') IS NULL " +

                    "BEGIN " +

                            "EXEC ( " +
              "CREATE DEFINER=`root`@`localhost` TRIGGER `video_BEFORE_INSERT` BEFORE INSERT ON `video` FOR EACH ROW BEGIN " +
              "IF ( 5 =  (SELECT count(*) from video R " +
                   " where R.userid = NEW.userid AND    DATE(date) = NEW.date) ) THEN   SIGNAL SQLSTATE '45000'; " +
                " END IF; " +
              "END"; //

0 个答案:

没有答案