Я написал хранимую процедуру, которая работала на моей локальной машине, но на сервере она не будет выполняться!Было бы здорово получить помощь
Хранимая процедура:
DROP PROCEDURE `ASKUS_INSERT`//
CREATE DEFINER=`root`@`localhost` PROCEDURE `ASKUS_INSERT`(
SENDERCONSUMERID INT(11),
QUESTION_POSTED TEXT,
DESCRIPTION_POSTED TEXT,
NETWORK_ID INT(11),
COMMTYPEID INT(11),
CONSUMERID INT(11),
CATEGORY_ID INT(11),
ACTIONID INT(11),
QUESTION_SLUG TEXT
)
BEGIN
DECLARE LASTINSERTEDID INT DEFAULT 0;
DECLARE GETTIPSAMOUNT INT DEFAULT 0;
DECLARE GETTIPSAMOUNTCONSUMER INT DEFAULT 0;
DECLARE SETTIPSAMOUNTCONSUMER INT DEFAULT 0;
DECLARE CHECKCOUNTTIPSEXIST INT DEFAULT 0;
SELECT COUNT(*) INTO CHECKCOUNTTIPSEXIST FROM ACTION_ENTERPRISE_MAPPING WHERE ACTION_ID = ACTIONID;
IF CHECKCOUNTTIPSEXIST > 0 THEN
SELECT SUM(TIP_AMOUNT) INTO GETTIPSAMOUNT FROM ACTION_ENTERPRISE_MAPPING WHERE ACTION_ID = ACTIONID;
ELSE
SET GETTIPSAMOUNT = 0;
END IF;
SELECT CONSUMER_TIPS INTO GETTIPSAMOUNTCONSUMER FROM CONSUMER_PROFILE WHERE CONSUMER_ID = SENDERCONSUMERID;
SET SETTIPSAMOUNTCONSUMER = GETTIPSAMOUNTCONSUMER + GETTIPSAMOUNT;
INSERT INTO NETWORK_COMMUNICATIONS (COMMUNICATIONS_ID,SENDER_CONSUMER_ID,NETWORK_COMM_TYPE_ID,PARENT_COMMUNICATIONS_ID,IS_ACTIVE,LAST_MOD_TIME,CONSUMER_ID) VALUES ('',SENDERCONSUMERID,COMMTYPEID,'0','1',NOW(),CONSUMERID);
SET LASTINSERTEDID = LAST_INSERT_ID();
UPDATE CONSUMER_PROFILE SET CONSUMER_TIPS = SETTIPSAMOUNTCONSUMER WHERE CONSUMER_ID = SENDERCONSUMERID;
INSERT INTO CONSUMER_ACTION_LOG (ACTION_LOG_ID,ACTION_ID,CONSUMER_ID,TIPS_AMOUNT,LAST_MOD_TIME,COMMUNICATIONS_ID,COMM_TYPE_ID) VALUES ('',ACTIONID,SENDERCONSUMERID,GETTIPSAMOUNT,NOW(),LASTINSERTEDID,ACTIONID);
INSERT INTO NETWORK_COMMUNICATIONS_MESSAGE (NETWORK_COMMUNICATION_MESSAGE_ID,COMMUNICATIONS_ID,SUBJECT,MESSAGE,IS_ACTIVE,LAST_MOD_TIME,QUESTION_SLUG) VALUES ('',LASTINSERTEDID,QUESTION_POSTED,DESCRIPTION_POSTED,'1',NOW(),QUESTION_SLUG);
INSERT INTO COMMUNICATION_INTEREST_MAPPING (ID,CONSUMER_INTEREST_EXPERT_ID,CONSUMER_ID,COMMUNICATION_ID,IN_NETWORK,LAST_MOD_TIME) VALUES ('',CATEGORY_ID,SENDERCONSUMERID,LASTINSERTEDID,NETWORK_ID,NOW());
IF SENDERCONSUMERID != 0 AND CONSUMERID != 0 AND SENDERCONSUMERID != CONSUMERID THEN
INSERT INTO CONSUMER_NOTIFICATION (CONSUMER_NOTIFICATION_ID,CONSUMER_ID,SENDER_CONSUMER_ID,ACTION_ID,COMMUNICATIONS_ID,IS_ACTIVE,LAST_MOD_TIME) VALUES ('',CONSUMERID,SENDERCONSUMERID,COMMTYPEID,LASTINSERTEDID,'1',NOW());
END IF;
END
Она говорит, что есть много синтаксических ошибок, а также неизвестных переменных.В этом случае он не должен работать на моем локальном хосте.Но это сделал!Я в замешательстве!