programing

업데이트 트리거 후 생성 시 빈 문자열에 대한 설명할 수 없는 MySQL 오류 #1064?

sourcejob 2023. 7. 28. 21:58
반응형

업데이트 트리거 후 생성 시 빈 문자열에 대한 설명할 수 없는 MySQL 오류 #1064?

MySQL을 서버 버전 10.1.34-MariaDB(XAmp 7.2.7-0-VC15-installer 내에서 분산)로 실행하고 Google Chrome에서 PphMyadmin을 사용하여 MySQL 데이터베이스에 액세스하는 중에 다음 오류가 발생했습니다.

#1064 - SQL 구문에 오류가 있습니다. MariaDB 서버 버전에 해당하는 설명서에서 4행의 " " 근처에서 사용할 구문을 확인하십시오.

이 경우 트리거 구문 생성:

DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate;
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN
SET @jns = 1;
END

내가 코드를 이렇게 바꿨을 때:

DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate;
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN

END

이런 식으로.

DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate;
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN
-- SET @jns = 1;
END

효과가 있었습니다.

뭐가 잘못됐는지 보여줄 수 있는 사람?감사해요.

다음을 사용해야 합니다.DELIMITER사용할 수 있도록 쿼리 구분 기호를 변경하는 지침;트리거 정의 내에 있습니다.

DELIMITER $$
DROP TRIGGER IF EXISTS Tsopd_main_AfterUpdate$$
CREATE TRIGGER Tsopd_main_AfterUpdate AFTER UPDATE
ON sopd_main FOR EACH ROW 
BEGIN
SET @jns = 1;
END$$
DELIMITER ;

언급URL : https://stackoverflow.com/questions/52084721/unexplainable-mysql-error-1064-for-empty-string-on-creating-after-update-trigge

반응형