mysql添加枚举约束语句_mysql中用sql语句创建枚举,总是提示失败!

在尝试创建一个MySQL触发器city2_trigger_insert时,遇到插入city2表后创建city2_trigger_record表并设置enum字段的语法错误。触发器中声明变量和设置默认枚举值为'unread',但在执行时收到1064错误,提示SQL语法错误。寻求解决此问题的方法。
摘要由CSDN通过智能技术生成

CREATE TRIGGER city2_trigger_insert //创建触发器

after INSERT on city2

FOR EACH ROW

BEGIN

CREATE TABLE IF NOT EXISTS city2_trigger_record( //如果记录表格不存在就创建,保存city2插入后的记录

id INT NOT NULL auto_increment,

manipulateDate datetime,

manipulatePeople VARCHAR(10),

manipulateName VARCHAR(20),

manipulateInfo VARCHAR(40),

readStatus enum('unread','read') NOT NULL DEFAULT 'unread',

PRIMARY KEY (id)

);

DECLARE t_city2_id INT; //15hang

DECLARE t_city2_cityName VARCHAR;

DECLARE t_city2_cityDetial VARCHAR;

DECLARE t_city2_insertInfo VARCHAR;

SET t_city2_id = new.id;

SET t_city2_cityName = new.cityName;

SET t_city2_cityDetial = new.cityDetial;

SET t_city2_insertInfo = CONCAT(t_city2_id, t_city2_cityName, t_city2_cityDetial); //拼接插入哪条信息

INSERT INTO city2_trigger_record VALUES(NOW(),"","insert",CONCAT("insert",t_city2_insertInfo),"unread");

END;

总是提示语法错误,我实在没怎么看出来,求大神们帮帮忙!小弟谢了!!!

[Err] 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 'DECLARE t_city2_id INT;

DECLARE t_city2_cityName VARCHAR(10);

DECLARE t_city' at line 15

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值