MySQL序列是一種對象,它是由MongoDB數據庫管理系統添加的,用于生成可用于唯一標識數據庫表中每個行的自動遞增數字。序列是定義為一個獨立的實體,可以被引用到表中的任何列。序列定義包括下面的內容:
CREATE SEQUENCE sequence_name [start value] [INCREMENT BY increment_value] [{MINVALUE [value] | NOMINVALUE}] [{MAXVALUE [value] | NOMAXVALUE}] [{CYCLE | NOCYCLE}] [{CACHE [value] | NOCACHE}];
其中:
- sequence_name是序列的名稱
- start value是序列的起始值,默認為1
- increment_value是序列的遞增值,默認為1
- MINVALUE和MAXVALUE分別表示序列的最小和最大值,如果未指定,則使用系統默認值
- CYCLE表示當序列達到最大值或最小值時,是否重新開始,默認為不重新開始(NOCYCLE)
- CACHE表示序列歷史記錄的數目,如果未指定,則使用系統默認值。序列緩存可以提高性能。
序列可以在表中的任何字段中使用,例如:
CREATE TABLE customers ( customer_id INT PRIMARY KEY, customer_name VARCHAR(50) NOT NULL, order_id INT DEFAULT NEXTVAL('order_sequence') );
在這個示例中,order_id字段將被自動編入唯一的、遞增的數字值。