在上一課,您已設定導覽規則來確定使用者輸入新分類廣告的唯一 ID。 這個程序無益且不切實際,因為您不會希望站台使用者經由反覆猜測來找到唯一 ID。 在這一課,您將設定自動產生序鍵,讓資料庫自動指派唯一的號碼給資料庫的每一筆新的記錄。
自動產生序鍵是一個很複雜的主題,但簡單地說,如果資料庫有專用來產生索引鍵的表格,資料庫便可以選擇新的索引鍵。 這份表格必須在一個直欄(增量器直欄)中有一份未用索引鍵的清單,在另一個直欄(身分直欄)中有一份從 1 開始的號碼清單。當資料庫需要新的索引鍵時,它會從身分直欄是 1 的列中取出索引鍵,之後,再得出供下次使用的新索引鍵。
當資料庫需要新的唯一索引鍵時,它會尋找身分直欄值是 1 的列。這列的增量器直欄值存放下一個可用的索引鍵。 資料庫會使用這個索引鍵,且會更新表格,以便下次有新的索引鍵可供使用。
| 身分直欄 | 增量器直欄 |
|---|---|
| 3 | 78 |
| 4 | 3 |
| 1 | 65 |
| 2 | 12 |
從表格中提取下一個可用的索引鍵之後,下次需要索引鍵時,會更新表格。藉由使用多列的增量器直欄值,資料庫也可以擷取多重索引鍵。
簡言之,如果自動產生序鍵要能夠運作,您只需要用兩個直欄來設定產生索引鍵的表格:作為身分直欄的主鍵直欄,以及用來儲存下一個可用索引鍵的直欄。 這份表格必須用身分直欄值是 1、增量器直欄值是第一個要用的可用索引鍵的記錄來起始設定。 將這個設好之後,您就已準備好,可以開始使用自動產生序鍵。