MariaDB多行插入顺序

时间:2018-06-23 09:29:03

标签: mysql mariadb

请考虑以下查询-

DELIMITER $
BEGIN NOT ATOMIC

IF (Select count(*) from t1 where name = 'test') = 0 THEN
    INSERT into t1(categoryId,name, language)
    values
        (NextVal(categorySequence),'test','en-US'),
        (LastVal(categorySequence),'test','de-DE');
END IF ;
END $
DELIMITER ;

我要插入2条具有相同“ categoryId”的记录。为了生成categoryId,我正在使用mariadb序列https://mariadb.com/kb/en/library/sequence-overview/。 NextVal()返回下一个序列号,LastVal()返回最后一个序列号(与NextVal()函数相同)。如果INSERT语句的顺序是从左到右(我在测试中发现),则上面的查询工作正常。示例:“ insert into x values('1'), ('2')”。 “ 1”将首先插入,然后插入“ 2”,但是我不确定mariadb是否会始终遵循此顺序。请帮助我了解INSERT顺序或建议我一些不同的查询。

0 个答案:

没有答案