编辑文件 修改自增id.sql
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
All checks were successful
ci/woodpecker/push/my-first-workflow Pipeline was successful
This commit is contained in:
@@ -1 +1,26 @@
|
||||
select setval('base_sys_user_id_seq', 10000000, false);
|
||||
select setval('base_sys_user_id_seq', 10000000, false);
|
||||
|
||||
|
||||
-- 1. 恢复原自增,解除依赖
|
||||
ALTER TABLE base_sys_user
|
||||
ALTER COLUMN id SET DEFAULT nextval('base_sys_user_id_seq');
|
||||
|
||||
-- 2. 清理旧函数
|
||||
DROP FUNCTION IF EXISTS next_8digit_rand_id() CASCADE;
|
||||
|
||||
-- 3. 【终极版】不重复 + 乱序 + 固定8位
|
||||
CREATE OR REPLACE FUNCTION next_8digit_rand_id()
|
||||
RETURNS bigint
|
||||
LANGUAGE plpgsql VOLATILE
|
||||
AS $$
|
||||
DECLARE
|
||||
seq_val bigint;
|
||||
BEGIN
|
||||
seq_val := nextval('base_sys_user_id_seq');
|
||||
RETURN 10000000 + ((seq_val * 1103515245 + 12345) # 58329) % 90000000;
|
||||
END;
|
||||
$$;
|
||||
|
||||
-- 4. 启用
|
||||
ALTER TABLE base_sys_user
|
||||
ALTER COLUMN id SET DEFAULT next_8digit_rand_id();
|
||||
|
||||
Reference in New Issue
Block a user