我的SQL脚本(sproc.sql):
use timetable_db;
DROP PROCEDURE IF EXISTS GetEmptyClassrooms;
delimeter |
CREATE PROCEDURE GetEmptyClassrooms()
BEGIN
SELECT room_number,seats from classrooms WHERE room_number not in (SELECT room_number FROM timetable);
END |
当我尝试通过phpmyadmin GUI将其导入MySQL时,我收到了错误:
命令的意外开始。 (位置0附近的“分隔符”)
抱歉,MySQL中的默认语言不是英语。我试着尽可能准确地翻译。
我在S.overflow上看过几篇关于类似错误的帖子,但我无法解决。
有解决方案可以解决这个问题,但帮助不大,因为最后我只想使用“my db name.sql”脚本,包括所有创建表,插入行等等,当然还有创建程序,一切都在一个,只是可导入的文件。
我试过了:
我真的是SQL的初学者,但我想提高自己。
感谢您的帮助:)
答案 0 :(得分:3)
我认为你使用的语法有错误。请尝试以下方式。
DROP procedure IF EXISTS `GetEmptyClassrooms`;
DELIMITER $$
USE `test`$$
CREATE PROCEDURE `GetEmptyClassrooms` ()
BEGIN
SELECT room_number,seats from classrooms
WHERE room_number not in (SELECT room_number FROM timetable);
END
$$
DELIMITER ;
其中 test 是您要在其中创建存储过程的数据库名称