0

我在 jadwal 表上有列寄存器:

CREATE TABLE IF NOT EXISTS 'jadwal' ('register' int(5) zerofill NOT NULL AUTO_INCREMENT, PRIMARY KEY ('register')

我想显示寄存器组合,今年 + auto_increment 像:

1800001
1800002
1800003

当年份为 2019 时,重置为 1900001

我尝试在 mysql 上添加 Y,例如 CREATE TABLE IF NOT EXISTS jadwal(寄存器 int(5) Y zerofill NOT NULL AUTO_INCREMENT,但不工作

请帮助源代码,非常感谢

4

1 回答 1

0

考虑一下:

  • 利用MEDIUMINT UNSIGNED
  • 在每年 1 月 1 日午夜插入一个虚假条目。使用值 1900001 表示 2019 年初。

(或者您可以在输入另一个条目1900000使用和删除它。)

替代方案有点混乱——它将涉及一个触发器,YEAR(CURDATE())用于查看是否需要将“下一个”id 提高到明年年初。

于 2019-02-08T06:17:16.537 回答