首页 > 解决方案 > Maria Db 使用 if 语句制作函数

问题描述

我正在研究 EnitityFrameWork 并尝试使用数据库功能。我不熟悉使用 Database 制作功能。这就是我所做的。错误显示第 16 行的语法错误“,即“RETURN x”

delimiter //
CREATE FUNCTION CREATE_TIME4(hour1 int, minute1 INT, second1 INT) 
RETURNS VARCHAR(50)
BEGIN
    DECLARE x VARCHAR(50);
    DECLARE H VARCHAR(10);
    DECLARE M VARCHAR(10);
    DECLARE S VARCHAR(10);
    IF LENGTH(YEA) < 2 THEN 
        SET H = '0' + CONCAT(hour1);
    IF LENGTH(MON) < 2 THEN 
        SET M = '0' + CONCAT(minute1);
    IF LENGTH(SEC) < 2 THEN 
        SET S = '0' + CONCAT(second1); 
    SET x = CONCAT(H,':', M,':', S);
    RETURN x;
END// 

标签: sqlfunctionmariadb

解决方案


您定义的函数中有很多错误。我只是在纠正编译错误。

CREATE FUNCTION CREATE_TIME4(@YEA int, @MON INT, @SEC INT) 
RETURNS VARCHAR(50)
AS
BEGIN
    DECLARE @x VARCHAR(50);
    DECLARE @H VARCHAR(10);
    DECLARE @M VARCHAR(10);
    DECLARE @S VARCHAR(10);
    IF LEN(@YEA) < 2 
        SET @H = CONCAT('0', @YEA);
    IF LEN(@MON) < 2 
        SET @M = CONCAT('0', @MON);
    IF LEN(@SEC) < 2 
        SET @S = CONCAT('0', @SEC); 
    SET @x = CONCAT(@H,':', @M,':', @S);
    RETURN @x;
END

推荐阅读