将一个字段的值设置为mysql中另一个字段的默认值

将一个字段的值设置为mysql中另一个字段的默认值,mysql,sql,database,Mysql,Sql,Database,我有一个表,如果在insert查询中密码列为空,我需要用national_id值填充密码列 在mysql中有没有使用触发器之类的方法 提前感谢插入前使用,触发: 触发结构: 查看更多信息 更多/更少详细的示例 像这样的东西应该有用 免责声明:我没有测试此代码,必须完成 CREATE TRIGGER trigger_name BEFORE INSERT ON table_name FOR EACH ROW BEGIN IF NEW.password is null THE

我有一个表,如果在insert查询中密码列为空,我需要用national_id值填充密码列

在mysql中有没有使用触发器之类的方法


提前感谢

插入前使用,触发:

触发结构:

查看更多信息

更多/更少详细的示例

像这样的东西应该有用

免责声明:我没有测试此代码,必须完成

CREATE TRIGGER trigger_name BEFORE INSERT ON table_name
FOR EACH ROW 
    BEGIN
        IF NEW.password is null THEN
            SET NEW.password = NEW.national_id
        END IF;
    END;

对使用触发器!你有自己的答案!你能告诉我你所说的触发码吗??我写了一个像这样的插入后触发器更新std_personal SET password=选择std_personal.national_id从std_personal ORDER BY id DESC limit 1触发器没有错误,但它不工作我不知道你评论了什么。。。。这根本不是一个触发器。。。看看我的眼睛edition@masoud他帮助过你吗?还是你还需要一个答案?
CREATE TRIGGER trigger_name BEFORE INSERT ON table_name
FOR EACH ROW 
    BEGIN
        IF NEW.password is null THEN
            SET NEW.password = NEW.national_id
        END IF;
    END;