所以我现在正在开发一个mysql触发器。我尝试在插入新记录时为两个变量赋值。以下是查询:
设置mssgdocno=(从core\u mssg中选择document\u id,其中message\u id=new.mssg\u id);
设置mssgregime=(从t_doc中选择concat(区域类型,区域代码),其中cd_message_id=new.mssg_id);;
由于某些原因,第二个sql查询没有提取“new.mssg\u id”条件,而同一触发器中的第一个查询可以识别它。我真的搞不懂是什么问题。
当我在第二个查询中将“new.mssg\u id”替换为数据库中的硬编码值时,它似乎起作用了。我怀疑“new.mssg\u id”是个问题,因为它在第一个查询中工作得非常好。
我几乎试过我能想到的任何东西。谢谢你的帮助。
1条答案
按热度按时间ghhaqwfi1#
我会把这些写得更简单:
这个
SET
没有必要。我做了另一个改变,也许能让它成功。我把空间移走了
CONCAT
. mysql的某些版本在函数调用后解析空格时遇到问题。