开发者社区> 问答> 正文

RDS创建function报错 本地运行正常 求解

我本地正常运行的 function,可是我在 rds数据库 中创建报错

CREATE TABLE t_sys_sequence (
  number_type varchar(255) NOT NULL DEFAULT '' COMMENT '编号类型',
  sequence_no bigint(20) DEFAULT NULL COMMENT '序列号',
  PRIMARY KEY (number_type)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE  FUNCTION getSysNumber(codeType VARCHAR(255),startValue INTEGER(11)) RETURNS bigint(20)
BEGIN
    if startValue is  null then
    set startValue = 1;
  end if;
    set @sn = startValue;
    INSERT INTO t_sys_sequence (number_type,sequence_no)
    VALUES (codeType,startValue) ON DUPLICATE KEY UPDATE sequence_no=@sn:=sequence_no+1;
    RETURN(@sn);
END;




【拆分SQL完成】:将执行SQL语句数量:(3条),拆分SQL耗时:(0ms.)【执行SQL:(1)】CREATE FUNCTION `getSysNumber`(codeType VARCHAR(255),startValue INTEGER(11)) RETURNS bigint(20)BEGINif startValue is null thenset startValue = 1执行失败,失败原因: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 '' at line 4


展开
收起
架构95338 2016-03-25 16:06:38 5413 0
1 条回答
写回答
取消 提交回答
  • 旺旺:nectar2。
    楼主您好,

    请问您的RDS版本和您的本地mysql数据库版本是一样的吗?
    2016-03-29 11:51:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像