如何使MySQL表主键自动增加一些变量前缀?如何使MySQL表主键自动增加一些变量前缀
我想使用触发器使字符串+数字都是可变的自动增量字段。例如PRJ001,PRJ002,PRD001,PRD002 ...等。 如何使用触发器或使用简单的查询来实现这个?
任何建议让我的一天?
如何使MySQL表主键自动增加一些变量前缀?如何使MySQL表主键自动增加一些变量前缀
我想使用触发器使字符串+数字都是可变的自动增量字段。例如PRJ001,PRJ002,PRD001,PRD002 ...等。 如何使用触发器或使用简单的查询来实现这个?
任何建议让我的一天?
就像它在评论中说的,你不能使用自动增量。
在你的地方,我不会使用单独的枚举,而是一个普通的枚举:PRJ001,PRJ002,PRD003,PRD004,PRJ005等等。
毕竟它只是一个名字,没有任何意义的数字。
,但在插入'PRJ'后,我想'PRD'作为前缀。还有一种机会,在一些'PRD'插入后我想插入'PRJ'。 –
在这种情况下,一旦新的前缀来了,你必须开始你的计数器0 –
我同意YCS。不要通过你的身份证号码获得所有强迫症 – Drew
我不认为这就是可能的话,有两种方法,我知道你如何能做到这一点:
Store中的字符串和数字分开,不使用AUTO_INCREMENT。尽管它的名字,这不是它的用途。 – Strawberry
可以这样做,当然。我会通过一个存储过程,锁定,花费20分钟,然后想知道它为什么非常重要 – Drew
这是我所指的[stored proc](http://stackoverflow.com/a/32018207/1816093)。这意味着你的插入通过一个存储过程发生,而不是本地插入语句。那边的问题是关于如何在重复更新上插入实际上在auto_increment值中创建空隙。存储的proc可以为您的目的而定制。但是不要。这个概念是疯狂的。不要使用它,剪裁它,它会导致不必要的精神错乱。 – Drew