add
This commit is contained in:
@@ -11,8 +11,8 @@ $$ LANGUAGE plpgsql VOLATILE;
|
|||||||
|
|
||||||
DO $$
|
DO $$
|
||||||
BEGIN
|
BEGIN
|
||||||
IF NOT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_name = 'user_account') THEN
|
IF NOT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_name = 'account') THEN
|
||||||
CREATE TABLE user_account (
|
CREATE TABLE account (
|
||||||
id UUID DEFAULT gen_random_uuid_v7() PRIMARY KEY NOT NULL,
|
id UUID DEFAULT gen_random_uuid_v7() PRIMARY KEY NOT NULL,
|
||||||
user_id UUID NOT NULL,
|
user_id UUID NOT NULL,
|
||||||
account VARCHAR NOT NULL,
|
account VARCHAR NOT NULL,
|
||||||
@@ -20,13 +20,13 @@ BEGIN
|
|||||||
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||||
);
|
);
|
||||||
CREATE TRIGGER update_user_account_updated_at
|
CREATE TRIGGER update_account_updated_at
|
||||||
BEFORE UPDATE ON "user_account"
|
BEFORE UPDATE ON "account"
|
||||||
FOR EACH ROW
|
FOR EACH ROW
|
||||||
EXECUTE FUNCTION update_account_modified_column();
|
EXECUTE FUNCTION update_account_modified_column();
|
||||||
|
|
||||||
RAISE NOTICE 'Created user_account table and trigger';
|
RAISE NOTICE 'Created account table and trigger';
|
||||||
ELSE
|
ELSE
|
||||||
RAISE NOTICE 'user_account table already exists';
|
RAISE NOTICE 'account table already exists';
|
||||||
END IF;
|
END IF;
|
||||||
END $$;
|
END $$;
|
||||||
@@ -11,8 +11,8 @@ $$ LANGUAGE plpgsql VOLATILE;
|
|||||||
|
|
||||||
DO $$
|
DO $$
|
||||||
BEGIN
|
BEGIN
|
||||||
IF NOT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_name = 'user_password') THEN
|
IF NOT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_name = 'password') THEN
|
||||||
CREATE TABLE user_password (
|
CREATE TABLE password (
|
||||||
id UUID DEFAULT gen_random_uuid_v7() PRIMARY KEY NOT NULL,
|
id UUID DEFAULT gen_random_uuid_v7() PRIMARY KEY NOT NULL,
|
||||||
user_id UUID NOT NULL,
|
user_id UUID NOT NULL,
|
||||||
password VARCHAR NOT NULL,
|
password VARCHAR NOT NULL,
|
||||||
@@ -20,13 +20,13 @@ BEGIN
|
|||||||
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||||
);
|
);
|
||||||
CREATE TRIGGER update_user_password_updated_at
|
CREATE TRIGGER update_password_updated_at
|
||||||
BEFORE UPDATE ON "user_password"
|
BEFORE UPDATE ON "password"
|
||||||
FOR EACH ROW
|
FOR EACH ROW
|
||||||
EXECUTE FUNCTION update_password_modified_column();
|
EXECUTE FUNCTION update_password_modified_column();
|
||||||
|
|
||||||
RAISE NOTICE 'Created user_password table and trigger';
|
RAISE NOTICE 'Created password table and trigger';
|
||||||
ELSE
|
ELSE
|
||||||
RAISE NOTICE 'user_password table already exists';
|
RAISE NOTICE 'password table already exists';
|
||||||
END IF;
|
END IF;
|
||||||
END $$;
|
END $$;
|
||||||
@@ -7,11 +7,11 @@ BEGIN
|
|||||||
-- 检查视图是否已存在
|
-- 检查视图是否已存在
|
||||||
SELECT EXISTS (
|
SELECT EXISTS (
|
||||||
SELECT 1 FROM information_schema.views
|
SELECT 1 FROM information_schema.views
|
||||||
WHERE table_name = 'user_account_password_view'
|
WHERE table_name = 'user_info_view'
|
||||||
) INTO view_exists;
|
) INTO view_exists;
|
||||||
|
|
||||||
-- 创建或更新视图
|
-- 创建或更新视图
|
||||||
CREATE OR REPLACE VIEW user_account_password_view AS
|
CREATE OR REPLACE VIEW user_info_view AS
|
||||||
SELECT
|
SELECT
|
||||||
u.id AS user_id,
|
u.id AS user_id,
|
||||||
ua.account AS account,
|
ua.account AS account,
|
||||||
@@ -20,15 +20,17 @@ BEGIN
|
|||||||
FROM
|
FROM
|
||||||
"user" u
|
"user" u
|
||||||
JOIN
|
JOIN
|
||||||
user_account ua ON u.id = ua.user_id
|
account ua ON u.id = ua.user_id
|
||||||
JOIN
|
JOIN
|
||||||
user_password up ON u.id = up.user_id;
|
password up ON u.id = up.user_id
|
||||||
|
WHERE
|
||||||
|
u.deleted = FALSE;
|
||||||
|
|
||||||
-- 根据视图是否已存在输出不同提示
|
-- 根据视图是否已存在输出不同提示
|
||||||
IF view_exists THEN
|
IF view_exists THEN
|
||||||
RAISE NOTICE '视图 user_account_password_view 已更新';
|
RAISE NOTICE '视图 user_info_view 已更新';
|
||||||
ELSE
|
ELSE
|
||||||
RAISE NOTICE '视图 user_account_password_view 已创建';
|
RAISE NOTICE '视图 user_info_view 已创建';
|
||||||
END IF;
|
END IF;
|
||||||
EXCEPTION
|
EXCEPTION
|
||||||
WHEN OTHERS THEN
|
WHEN OTHERS THEN
|
||||||
Reference in New Issue
Block a user