+ [highgo] Add pgsq.sql
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
DO $$
|
||||
DECLARE
|
||||
rec RECORD;
|
||||
max_id BIGINT;
|
||||
BEGIN
|
||||
FOR rec IN (
|
||||
SELECT
|
||||
t.table_name AS table_name,
|
||||
c.column_name AS column_name,
|
||||
regexp_replace(
|
||||
c.column_default,
|
||||
'^nextval\(''([^'']+)''::regclass\)$',
|
||||
'\1'
|
||||
) AS seq_name
|
||||
FROM
|
||||
information_schema.columns c
|
||||
JOIN
|
||||
information_schema.tables t ON c.table_name = t.table_name
|
||||
WHERE
|
||||
t.table_type = 'BASE TABLE'
|
||||
AND c.column_default LIKE 'nextval(''%''::regclass)'
|
||||
AND t.table_schema = 'public'
|
||||
) LOOP
|
||||
EXECUTE format('SELECT COALESCE(MAX(%I), 0) FROM %I', rec.column_name, rec.table_name)
|
||||
INTO max_id;
|
||||
|
||||
EXECUTE format('SELECT setval(''%s'', %s)', rec.seq_name, max_id + 1);
|
||||
|
||||
RAISE NOTICE '调整序列: % (表: %,字段: %),新值: %',
|
||||
rec.seq_name, rec.table_name, rec.column_name, max_id + 1;
|
||||
END LOOP;
|
||||
END $$;
|
||||
|
||||
--
|
||||
|
||||
CREATE INDEX idx_zt_searchindex_fts
|
||||
ON zt_searchindex
|
||||
USING gin(
|
||||
to_tsvector('pg_catalog.english',
|
||||
coalesce(title, '') || ' ' || coalesce(content, '')
|
||||
)
|
||||
);
|
||||
Reference in New Issue
Block a user