2017-10-15 25 views
0

我使用Fat Free Framework來創建我的數據庫驅動的應用程序。我創建這個可以根據ID輕鬆存儲我的測試結果。該ID是字母和數字的組合,如A01A100然後B01B100等等。現在,我在信H用獨特的值構造我的數據庫表

每個ID都是一個唯一的列,因此沒有兩個ID可以相同。我正在檢索所有與此ID相關的數據。 http:// localhost/monitor/A01

現在我的問題是,當今年(2017年)來臨和結束時,ID將恢復爲A01 2018年的數據。 我的表結構如下

+---------------+------------------+------+-----+---------+----------------+ 
| 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

回答

0

你忘了表達你的問題,但我相信你想知道如何構建數據庫。

嗯,我看到兩個解決方案:

1)無論你處理在PHP系列的獨特性,因此你只需要通過更換上monitor_label唯一索引非唯一一個

2),或者你存儲在數據庫中的新monitor_year列,並通過複合唯一索引monitor_year,monitory_label

+0

對不起更換monitor_label唯一索引,是的,我的問題是如何構建我的數據庫,這樣我可以保持獨特'monitor_label'但仍因爲每年都會使用明年'monitor_label'將恢復爲** A01 **。我喜歡使用複合獨特索引的想法,但我必須改變路線到'http:// localhost/monitor/2017/A01' – zimorok

+0

對不起,是的,我的問題是如何構建我的數據庫,以便我可以保持獨特的'monitor_label',但仍然可以在明年使用,因爲每年,'monitor_label'將恢復爲** A01 **。我喜歡使用複合唯一索引的想法,但我必須將路由更改爲'http:// localhost/monitor/2017/A01' – zimorok