0

我正在创建两个表:代码和子代码。每个代码可以有几个子代码。我想用数字标记代码,用字母标记子代码(例如 100A、100B、100C)。这如何在 MySQL 中类似于使用自动增量来完成?

4

1 回答 1

0

自动递增列必须是整数。

实现所需内容的一种方法是将列的 16 位用于代码,将其他 16 位用于子代码。

MySQL 将看到一个纯整数,并且能够递增它。

function decode($id) {
    $code = ($id >> 16) & 0xFFFF;
    $subcode = convert_base($id & 0xFFFF);
}

function encode($code, $subcode) {
    return ($code << 16) | convert_base($subcode);
}

(具有convert_base使用 AZ 对数字进行编码的功能)

于 2013-05-26T18:51:20.337 回答