Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果不存在记录,如何创建事件以删除表和其他事件_Java_Mysql_Sql - Fatal编程技术网

Java 如果不存在记录,如何创建事件以删除表和其他事件

Java 如果不存在记录,如何创建事件以删除表和其他事件,java,mysql,sql,Java,Mysql,Sql,我正在创建一个带有事件的总线表来维护th数据。如果总线表中不存在记录,是否可以通过DropBusEvent事件删除表和autoDelete事件 stt.execute("CREATE TABLE IF NOT EXISTS bus" + "(id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY," + "mac VARCHAR(30) NOT NULL UNIQUE,"

我正在创建一个带有事件的总线表来维护th数据。如果总线表中不存在记录,是否可以通过
DropBusEvent
事件删除表和
autoDelete
事件

        stt.execute("CREATE TABLE IF NOT EXISTS bus"
                + "(id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,"
                + "mac VARCHAR(30) NOT NULL UNIQUE,"
                + "route int(11) NOT NULL,"
                + "latitude FLOAT(10,6) NOT NULL,"
                + "longitude FLOAT(10,6) NOT NULL,"
                + "created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP)");

        stt.execute("CREATE EVENT IF NOT EXISTS  AutoDelete "
                + "ON SCHEDULE EVERY 3 MINUTE "
                + "DO "
                + "DELETE FROM bus WHERE created_at < (NOW() - INTERVAL 3 MINUTE)");

        // I tried this statement here but it does not work.
        stt.execute("CREATE EVENT IF NOT EXITS DropBusTable "
                + "Do "
                + "DROP TABLES IF EXISTS bus");
stt.execute(“如果总线不存在,则创建表”
+(id INT(11)非空自动增量主键
+mac VARCHAR(30)非空唯一
+路由int(11)不为空
+纬度浮动(10,6)不为空
+经度浮点(10,6)不为空
+“在时间戳处创建(默认当前时间戳)”;
stt.execute(“如果不存在,则创建事件自动删除”
+“按计划每3分钟”
+“做”
+“从创建时的总线中删除(现在()-间隔3分钟)”;
//我在这里试过这个说法,但不起作用。
stt.execute(“如果不存在则创建事件退出DropBusTable”
+“做”
+“放置表格(如果存在总线”);
我发现
您的SQL语法有错误;检查与MySQL服务器版本相对应的手册,以了解在第1行的“EXITS DropBusTableDROP TABLES IF EXISTS bus”附近使用的正确语法

您的语法有错误:

退出
而不是
存在
排队

stt.execute("CREATE EVENT IF NOT EXITS DropBusTable "

有一个输入错误-出口应该是EXISTS@Richard:我仍然收到此错误
您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解在第1行“EXITS DropBusTable Do DROP TABLES IF EXITS bus”附近使用的正确语法。此外,我只是设置事件,而没有检查表中是否存在记录?我如何设置事件来检查它?