我正在尝试在mysql数据库中创建一列,使其自动递增1,但从0到Z然后循环。
例如:000、001、002、...、009、00A、00B、...、00Z、010、...、0ZZ、...、100。
我希望数据库通过自动递增字段来创建该列。
我的想法是:
1. 创建每个字符的列,从0到36,然后自动递增第N行(其中N是最低有效位数)。然后在每个列上添加触发器,当列N达到36时,将1添加到列N-1。 2. 创建一个包含36行的表,每行包含一个字符0-Z,并使用与上述类似的进位逻辑从表中提取相应的字符。 3. 创建存储过程来执行项目1的适当逻辑。 4. 让实际程序生成一个值并将其插入表中。 5. 有一个常规的自动递增值,并计算序列中的下一个值(这是最不理想的,因为它使得难以通过仅查看数据库来解析)。
我希望有一种优雅的方法可以实现此功能,例如内置机制,但我不知道。我对存储过程/触发器一无所知,因此需要帮助。我认为最简单的方法是为字符设置查找表,并在达到第36行时将其重置为0,然后进行到第N-1行的进位。
例如:000、001、002、...、009、00A、00B、...、00Z、010、...、0ZZ、...、100。
我希望数据库通过自动递增字段来创建该列。
我的想法是:
1. 创建每个字符的列,从0到36,然后自动递增第N行(其中N是最低有效位数)。然后在每个列上添加触发器,当列N达到36时,将1添加到列N-1。 2. 创建一个包含36行的表,每行包含一个字符0-Z,并使用与上述类似的进位逻辑从表中提取相应的字符。 3. 创建存储过程来执行项目1的适当逻辑。 4. 让实际程序生成一个值并将其插入表中。 5. 有一个常规的自动递增值,并计算序列中的下一个值(这是最不理想的,因为它使得难以通过仅查看数据库来解析)。
我希望有一种优雅的方法可以实现此功能,例如内置机制,但我不知道。我对存储过程/触发器一无所知,因此需要帮助。我认为最简单的方法是为字符设置查找表,并在达到第36行时将其重置为0,然后进行到第N-1行的进位。