0

在数据库中,我有两个要实现的表。每个表的主键都是 AutoIncremented。所以用户只需插入值,每一行都会得到它的主键。但是如果我有两个表,我怎样才能使各自的主键彼此不同呢?这里有一个例子:

Table brothers
    +------------------+---------+------+
    | id               | Name    | Age  |
    +------------------+---------+------+
    | 1                | James   | 30   |
    | 2                | John    | 12   |
    | 3                | Frank   | 19   |
    +------------------+---------+------+

Table sisters
    +------------------+---------+------+
    | Id               | Name    | Age  |
    +------------------+---------+------+
    | 1                | Donna   | 13   |
    | 2                | Joy     | 15   |
    | 3                | Lucy    | 11   |
    +------------------+---------+------+

我有两个表和一个主键(id),它增加了每个表的值。我的问题是这两个 id 是相似的。那么,我怎样才能保持增加和改变id的值呢?我想要:

Table brothers
    +------------------+---------+------+
    | id               | Name    | Age  |
    +------------------+---------+------+
    | BRO01            | James   | 30   |
    | BRO02            | John    | 12   |
    | BRO03            | Frank   | 19   |
    +------------------+---------+------+

Table sisters
    +------------------+---------+------+
    | Id               | Name    | Age  |
    +------------------+---------+------+
    | SIS01            | Donna   | 13   |
    | SIS02            | Joy     | 15   |
    | SIS03            | Lucy    | 11   |
    +------------------+---------+------+

我在 phpmyadmin 中工作,所以如果您向我发布 SQL 代码,它不是很有用...谢谢

4

2 回答 2

0

如果您希望两个表具有相同的递增主键,请从每个表中删除主键并将它们替换为第三个表的外键,该表只有递增主键。

于 2013-09-04T00:03:27.667 回答
0

这对于 MySQL 自动增量机制是不可能的,它只处理数字而不是像“BRO”这样的字符串。您可以使用“插入前”类型的触发器来执行此操作。

于 2013-09-04T12:08:46.410 回答