【问题标题】:Error Creating Trigger Unknown System Variable创建触发器未知系统变量时出错
【发布时间】:2014-09-22 21:25:34
【问题描述】:

我正在尝试使用以下方法在 mysql 中创建触发器:

CREATE TRIGGER ins_daft BEFORE INSERT ON jos_ezrealty
FOR EACH ROW BEGIN 
SET preschool = livingarea*10.76391041671
END;

当我这样做时,我收到以下错误:

Error
SQL query:

CREATE TRIGGER ins_daft BEFORE INSERT ON jos_ezrealty
FOR EACH
ROW BEGIN 
SET preschool = livingarea * 10.76391041671 END

MySQL said: Documentation

#1193 - Unknown system variable 'preschool' 

我试图通过乘以 10.76391041671 将一个字段的值转换为平方英尺。谁能看到我做错了什么?

谢谢。

【问题讨论】:

    标签: mysql triggers mysql-error-1193


    【解决方案1】:

    任何时候您想引用触发触发器的行的列,将它们限定为NEW.column_name

    否则SET 命令认为您要设置一个名为preschool 的 MySQL 配置变量。

    【讨论】:

    • 我进行了更改,现在我得到了这个:SQL 查询:在每行开始设置新的 jos_ezrealty 之前创建触发器 ins_daft = 'livingarea*10.76391041671' END MySQL 说:文档 #1064 -您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 3 行的“END”附近使用正确的语法
    • 触发器主体中的每个语句都需要一个分号 (;) 来终止它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-26
    • 2013-05-06
    • 2017-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多