[英]mysql stored procedure fails on 'END'
我不知道为什么这行不通,我有一个几乎没有问题的类似程序,但是这个程序总是抛出错误:
#1064-您的SQL语法有误; 检查与您的MySQL服务器版本相对应的手册,以在第36行的“ END”附近使用正确的语法
DELIMITER //
CREATE PROCEDURE FillCnsGroupWithRates
(
IN groupId INT(10)
)
BEGIN
SET @var1 = groupId;
INSERT INTO
cns_group_rates
(
cns_id,
other_cns_id,
ppc,
pps,
max_price,
notes,
cns_group_id
)
SELECT
cns_id,
other_cns_id,
ppc,
pps,
max_price,
notes,
@var1
FROM
cns_rates
WHERE
cns_id NOT LIKE '319%'
AND
client_id IS NULL
AND
subordinates IS NULL
AND
valid_from IS NULL
END //
DELIMITER ;
你忘了最后的分号
DELIMITER //
CREATE PROCEDURE FillCnsGroupWithRates
(
IN groupId INT(10)
)
BEGIN
SET @var1 = groupId;
INSERT INTO
cns_group_rates
(
cns_id,
other_cns_id,
ppc,
pps,
max_price,
notes,
cns_group_id
)
SELECT
cns_id,
other_cns_id,
ppc,
pps,
max_price,
notes,
@var1
FROM
cns_rates
WHERE
cns_id NOT LIKE '319%'
AND
client_id IS NULL
AND
subordinates IS NULL
AND
valid_from IS NULL;
END //
DELIMITER ;
您会在查询末尾忘记分号试试这个
DELIMITER //
CREATE PROCEDURE FillCnsGroupWithRates
(
IN groupId INT(10)
)
BEGIN
SET @var1 = groupId;
INSERT INTO
cns_group_rates
(
cns_id,
other_cns_id,
ppc,
pps,
max_price,
notes,
cns_group_id
)
SELECT
cns_id,
other_cns_id,
ppc,
pps,
max_price,
notes,
@var1
FROM
cns_rates
WHERE
cns_id NOT LIKE '319%'
AND
client_id IS NULL
AND
subordinates IS NULL
AND
valid_from IS NULL;
END //
DELIMITER ;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.