好吧,让我解释一下尽可能简单,基本上我有一个表doc_info,它存储有关上传文件的信息;如文件名,创建日期,上传等;
我想要的是在这个表上创建一个INSERT触发器,它将获得两件事,这个新插入行的主键ID和上传文件名的扩展名将在文档名称中;并连接它们并使用此连接值
更新同一行实施例, 如果有人上传" document.docx",则ID将自动生成为x,文档名称将为document.docx,因此要存储的值为" x.docx"在同一行使用更新。
我是这个MySQL的新手,如果可以用MySQL执行这样的操作,我几乎不知道。
答案 0 :(得分:1)
要在db中实现此类操作,您应该创建两个触发器:插入和更新后。它们应该像这样一个
delimiter |
CREATE TRIGGER changeProperty AFTER INSERT ON doc_info
FOR EACH ROW
BEGIN
UPDATE doc_info SET doc_info.someProperty = CONCAT(doc_info.id, doc_info.extension) WHERE doc_info.id = NEW.id;
END;
|
您可以通过以下表达式计算文件名的扩展名:SUBSTRING_INDEX(doc_id.fileName, '.', -1);