mysql 主键以模式开头

标签 mysql primary-key unique design-patterns

我有 2 个表格书籍,一个 Mysql 数据库中的手机。

表结构是,

1. book_id|book_name  
2. mobile_id|mobile_name

还创建了具有以下结构的第三个表产品,

  1. 产品 ID|产品名称

现在,我希望 book_id 以 mysql 中的模式开头。

例如,

book_ids -> 11,12,13,14,15,16,17,18,19,110,111,112,...  
mobile_ids -> 21,22,23,24,25,26,27,28,29,210,211,212,...

现在,在我的产品表中,我可以拥有,

product_id -> 11,21,16,26,如果以未设置模式开头, 那么问题是,

product_id -> 1,1,6,6..它不是唯一的。

如何处理这个..?

编辑以下内容:

所以,你的意思是这个..?

category_table

类别 ID |类别_名称

1 |书籍
2 |手机

预订表

book_id |书名

1 |达芬奇密码
2 |炼金术士

mobile_table

手机 ID |手机名称

1 |诺基亚
2 |三星

产品表

id |产品名称 |产品 ID |类别_id

1 |达芬奇密码| 1 | 1
2 |炼金术士| 2 | 1
3 |诺基亚 | 1 | 2
4 |三星| 2 | 2

最佳答案

您似乎毫无理由地重复信息。

只需创建一个产品表:

id | name | type (e.g. 0 book, 1 mobile, etc) | price | ....

关于mysql 主键以模式开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10293042/

相关文章:

ios - 在 Adob​​e AIR for iOS 中获取唯一标识符(MAC 地址、UDID 等...)

javascript - 我想生成唯一 ID

mysql - 如何查询私有(private)消息收件箱的2个关系表

mysql - Erlang MySQL : How to prevent SQL Injections

sql-server - 主键上的默认索引

jpa - org.eclipse.persistence.exceptions.QueryException : The primary key read from the row during the execution of the query was detected to be null

angularjs - Angular 中的 select 和 ng-repeat 问题

php - 使用 MySQL、PHP 和 xml 进行 Google map 搜索

java - 如何让spring使用mysql而不是hsql

mysql - 通过 Liquibase 重命名主键列,自动增量被删除(MySQL)