CREATE TABLE employees (
employee_id SERIAL PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50)
);
CREATE TABLE orders (
order_id SERIAL PRIMARY KEY,
order_date DATE DEFAULT CURRENT_DATE,
total_amount DECIMAL(10, 2) DEFAULT 0
);
NEXTVAL
和CURRVAL
函數手動獲取序列的下一個值和當前值。例如:SELECT NEXTVAL('employee_id_seq');
SELECT CURRVAL('employee_id_seq');
SETVAL
函數來設置序列的當前值,從而實現序列的重置和重新開始。例如:SELECT SETVAL('employee_id_seq', 1);
CACHE
參數來指定序列的緩存大小,以提高性能。緩存大小表示序列一次遞增的值的個數,當序列的當前值達到緩存大小時,會再次遞增緩存大小個值,減少序列訪問的開銷。例如:CREATE SEQUENCE employee_id_seq CACHE 10;