OceanBase为什么官网文档的存储过程在3.2.4企业版执行不了?obclient> CREATE TABLE city(CountryCode CHAR(3))/ Query OK, 0 rows affected
obclient> CREATE PROCEDURE citycount (IN country CHAR(3), OUT cities INT) BEGIN SELECT COUNT(*) INTO cities FROM city WHERE CountryCode = country; END/ Query OK, 0 rows affected
可能是因为您在执行存储过程时缺少了 DELIMITER 命令,导致 obclient 无法正确解析存储过程中的语句。在执行存储过程之前,您可以先执行以下命令来设置 DELIMITER:
obclient> DELIMITER //
然后再执行 CREATE PROCEDURE 命令,如下所示:
obclient> CREATE PROCEDURE citycount (IN country CHAR(3), OUT cities INT)
-> BEGIN
-> SELECT COUNT(*) INTO cities FROM city WHERE CountryCode = country;
-> END//
最后,您需要使用以下命令将 DELIMITER 设置回默认值:
obclient> DELIMITER ;
这样就可以正确创建该存储过程了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。