微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

检查PostgreSQL中是否已存在用户定义的类型

假设我在DB中创建了一些用户定义的类型,

即CREATE TYPE abc …

那么可以确定用户定义的类型是否存在?也许,使用任何postgres信息表?

主要原因是因为Postgresql似乎不支持CREATE OR REPLACE TYPE …,如果某个类型被多次创建,我希望能够首先删除现有的类型,然后重新加载新的一.

在这里添加了在简单脚本中创建类型的完整解决方案,而无需为此目的创建函数.
--create types
DO $$
BEGIN
    IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'my_type') THEN
        CREATE TYPE my_type AS
        (
            --my fields here...
        );
    END IF;
    --more types here...
END$$;

原文地址:https://www.jb51.cc/postgresql/192838.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐