如果我在MySQL中創建了使用CREATE TRIGGER
語法的觸發器,那麼我怎樣給它添加註釋才能描述它?我的意思是在宣言中或在對我來說是一樣的。在觸發器中添加註釋(描述)
我找不出來。使用表格,您可以在聲明結尾處添加COMMENT = 'Wonderful table with users inside';
。但是,如何將評論添加到觸發器?
如果我在MySQL中創建了使用CREATE TRIGGER
語法的觸發器,那麼我怎樣給它添加註釋才能描述它?我的意思是在宣言中或在對我來說是一樣的。在觸發器中添加註釋(描述)
我找不出來。使用表格,您可以在聲明結尾處添加COMMENT = 'Wonderful table with users inside';
。但是,如何將評論添加到觸發器?
您不能將註釋附加到觸發器。
但是,您可以在觸發器主體中添加註釋。
如果您在體型評論像/** comment **/
可以提取與下面的查詢這些評論:
SELECT
SUBSTRING(b.body, b.start, (b.eind - b.start)) as comment
FROM (
SELECT
a.body
,locate('/**',a.body) as start
,locate('**/',a.body) as eind
FROM (
SELECT t.ACTION_STATEMENT as body FROM information_schema.triggers t
WHERE t.TRIGGER_NAME like %aname%
) a
) b
作爲一種解決方法,您可以在觸發器的正文內寫入註釋文本,例如, -
CREATE TRIGGER trigger1
AFTER INSERT
ON table1
FOR EACH ROW
BEGIN
-- 'Wonderful trigger with insert inside';
INSERT INTO table2 VALUES(NEW.id);
END
你可以把在MySQL觸發評論中這樣way-
CREATE TRIGGER trigger1
AFTER INSERT
ON table1
FOR EACH ROW
BEGIN
/*!99999 This is my comment , i will ignore at run time. */
INSERT INTO table2 VALUES(NEW.id);
END
爲防止執行「代碼」,您可以使用非常高的版本號,例如99999.
觸發器沒有這個選項。 – Devart