MariaDB [d]> CREATE SEQUENCE a1 START WITH 5000 INCREMENT BY 1 MINVALUE=5000 MAXVALUE=5003;
|
Query OK, 0 rows affected (0.026 sec)
|
|
MariaDB [d]> SELECT LASTVAL(a1), NEXTVAL(a1);
|
+-------------+-------------+
|
| LASTVAL(a1) | NEXTVAL(a1) |
|
+-------------+-------------+
|
| NULL | 5000 |
|
+-------------+-------------+
|
1 row in set (0.001 sec)
|
|
MariaDB [d]> SELECT LASTVAL(a1), NEXTVAL(a1);
|
+-------------+-------------+
|
| LASTVAL(a1) | NEXTVAL(a1) |
|
+-------------+-------------+
|
| 5000 | 5001 |
|
+-------------+-------------+
|
1 row in set (0.000 sec)
|
|
MariaDB [d]> FLUSH TABLES;
|
Query OK, 0 rows affected (0.000 sec)
|
|
MariaDB [d]> SELECT LASTVAL(a1); # FLUSH TABLES shouldn't affect LASTVAL() - OK
|
+-------------+
|
| LASTVAL(a1) |
|
+-------------+
|
| 5001 |
|
+-------------+
|
1 row in set (0.001 sec)
|
|
MariaDB [d]> SELECT NEXTVAL(a1); # Problematic behavior
|
ERROR 4084 (HY000): Sequence 'd.a1' has run out
|
MariaDB [d]> SELECT LASTVAL(a1); # NEXTVAL() affects LASTVAL(), should it?
|
+-------------+
|
| LASTVAL(a1) |
|
+-------------+
|
| NULL |
|
+-------------+
|
1 row in set (0.000 sec)
|
|