次のクエリでエラーが発生する可能性はありますか?MySQLでプロシージャを作成する際にエラーが発生しました
DELIMITER $$
CREATE PROCEDURE `tbl_assessment_notes`(
`var_reason` VARCHAR,
'var_attr2' VARCHAR,
'var_note' VARCHAR
)
BEGIN
IF EXISTS
(
SELECT
*
FROM
tbl_assessment_notes
WHERE
reason = var_reason AND attr2 = var_attr2
) THEN
UPDATE
tbl_assessment_notes
SET
note = CONCAT(note, var_note),
TIMESTAMP = 'CURRENT_TIMESTAMP'
WHERE
attr1 = var_attr1 AND reason = var_reason ELSE
INSERT
INTO
tbl_assessment_notes(
pk_assess_note_id,
attr2,
attr3,
reason,
note,
TIMESTAMP
)
VALUES(
NULL,
var_attr2,
NULL,
'confirmation',
var_note,
'CURRENT_TIMESTAMP'
) ;
END IF ;
END $$
DELIMITER ;
私は次のエラーを取得しています:
#1064 - 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 '
'var_reason' VARCHAR,
'var_attr2' VARCHAR,
`var_note` VARCHAR,
'var' at line 2
基本的に私は何をしようとしているが、それは新しい行が存在するか、他作成する場合は行を更新し、それに値を挿入することです。
エラーメッセージは何を使用してください? –
"var_attr1" VARCHAR、 'var_attr2' VARCHAR、 var_title' VARCHAR、 'あなたがコードにそのような部分を含んでいないコードがどこにありますか? –
@ManojShukla Sry私はエラーを誤って判断しました。これで編集されました。 –