我正在使用Fat免费框架创建我的数据库驱动的应用程序。这个ID是一个字母和数字的组合,比如A01 to A100,B01 to B100等等。现在,我在字母H上。
每个ID都是唯一的列,因此没有两个ID可以是相同的。我正在检索与ID相关的所有数据,比如这个http://localhost/monitor/A01。
现在我的问题是,当今年(2017年)结束时,ID将返回到A01 for 2018 data。我的表结构如下
+---------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+------------------+------+-----+---------+----------------+
| monitorId | int(10) unsigned | NO | PRI | NULL | auto_increment |
| monitor_label | char(5) | NO | UNI | NULL | |
| casting_date | date | YES | | NULL | |
| casting_time | time | YES | | NULL | |
| clientId | int(10) unsigned | NO | MUL | NULL | |
| projectId | int(10) unsigned | NO | MUL | NULL | |
| gid | int(10) unsigned | NO | MUL | NULL | |
| mid | int(10) unsigned | NO | MUL | NULL | |
| techId | int(10) unsigned | NO | MUL | NULL | |
| cube_size | int(1) unsigned | NO | MUL | NULL | |
| remark | varchar(255) | YES | | NULL | |
| slump | int(3) | NO | | NULL | |
| sample | int(11) | NO | | NULL | |
| data_status | int(10) unsigned | NO | | NULL | |
+---------------+------------------+------+-----+---------+----------------+A01数据存储在monitor_label中。
发布于 2017-10-15 09:15:49
你忘了表达你的问题,但我相信你想知道如何构造你的数据库。
我看到了两种解决方案:
1)要么在PHP中处理系列唯一性,因此只需要将monitor_label上的唯一索引替换为非唯一索引。
2)或者在数据库中存储一个新的monitor_year列,并将monitor_label上的唯一索引替换为monitor_year,monitory_label上的复合唯一索引
https://stackoverflow.com/questions/46753004
复制相似问题