MogDB导出TYPE对象的DDL

ops/2025/4/2 7:48:18/

目前 dbms_metadata.get_ddl 还不支持导出TYPE对象

orcl=> select version();version                                                                        
------------------------------------------------------------------------------------------------------------------------------------------------------(MogDB 5.0.6 build 8b0a6ca8) compiled at 2024-03-27 11:05:29 commit 0 last mr 1804  on x86_64-unknown-linux-gnu, compiled by g++ (GCC) 7.3.0, 64-bit
(1 row)orcl=> select dbms_metadata.get_ddl('TYPE','TYPE_EMP_TABLE','SCOTT') from dual;
ERROR:  GET_DDL for type TYPE does not supported yet
CONTEXT:  referenced column: get_ddl

虽然 dbms_metadata.get_ddl不支持,但是还是有其他方法

在MogDB/openGauss中,可以使用gs_dump导出数据库中所有对象

可以先使用gs_dump导出所有对象DDL,再使用shell过滤CREATE TYPTE

[omm@mogdb506 ~]$ gs_dump orcl -U scott -Wtiger@123 --schema-only --schema=scott -f get_type_ddl.sql > /dev/null
[omm@mogdb506 ~]$ sed -i -n '/CREATE TYPE/{:start /;[[:space:]]*$/!{N;b start};p}' get_type_ddl.sql
[omm@mogdb506 ~]$ cat get_type_ddl.sql 
CREATE TYPE str_split AS TABLE OF "varchar";
CREATE TYPE type_emp_table AS (empno numeric(4,0),ename character varying(10),job character varying(9),mgr numeric(4,0),hiredate timestamp(0) without time zone,sal numeric(7,2),comm numeric(7,2),deptno numeric(2,0)
);
CREATE TYPE type_number AS TABLE OF "numeric";
CREATE TYPE type_number2 AS TABLE OF "numeric";

PG系数据库的pg_dump,openGauss系数据库的gs_dump还是挺实用的,点个赞

如需了解更多详情如白皮书、异构数据迁移方案等请移步www.mogdb.io

如果您是软件开发商申请数据库适配,请联系市场营销marketing@enmotech.com


http://www.ppmy.cn/ops/25063.html

相关文章

若依前后端部署系统--详细附图

一、后端部署 1、在ruoyi项目的Maven中的生命周期下双击package.bat打包Web工程,生成jar包文件。 提示打包成功 2、多模块版本会生成在ruoyi/ruoyi-admin模块下target文件夹,我们打开目录ruoyi-admin/taget,打开cmd,运行java -jar jar包名称…

c++ opencv

文章目录 错误1. C2039 "channels": 不是 "cv::DataType<_Tp>" 的成员2. 注意cv::mat的类型3. cv::mat求inv4. vector subscript out of range5. 使用determinant求行列式注意点 其他1.Vec3b的赋值与访问2. cv::mean3. 将cv::mat三通道改为单通道且保…

python实现Web开发的工具

Python是一种流行的编程语言&#xff0c;非常适合Web开发。它拥有大量强大的库和框架&#xff0c;可以帮助开发者快速构建高质量的Web应用程序。以下是一些常用的Python Web开发框架和工具&#xff1a; Django&#xff1a; Django是一个高级Python Web框架&#xff0c;它鼓励快…

Web安全测试实战:SQL注入与XSS攻击的检测与防御

摘要&#xff1a; 在网络安全领域&#xff0c;SQL注入和跨站脚本&#xff08;XSS&#xff09;攻击是两大主要威胁&#xff0c;它们可以导致数据泄露、会话劫持甚至整个系统的破坏。本文将通过具体的代码示例、测试步骤和防御策略&#xff0c;展示如何检测和防御这两种攻击&…

张小泉签约实在智能,用实在Agent打造自动化高

在不少老杭州人的童年记忆里&#xff0c;妈妈裁剪衣服、料理食材、修剪各种物品&#xff0c;用的都是张小泉刀剪。 近日&#xff0c;实在智能与“刀剪第一股”张小泉&#xff08;股票代码&#xff1a;301055.SZ&#xff09;正式达成合作&#xff0c;实在Agent数字员工助力张小…

SpringMVC架构中Controller层调用的service接口而非实现类serviceImpl的原因及实现原理

为什么Controller层调用的是service接口&#xff0c;而不是其实现类&#xff1f; 在Java的MVC架构中&#xff0c;通常Controller层注入的是服务层的接口&#xff0c;而不是实现类。这样做的原因主要是为了实现面向接口编程和依赖注入&#xff0c;有助于降低各层之间的耦合性&a…

Python | Leetcode Python题解之第60题排列序列

题目&#xff1a; 题解&#xff1a; class Solution:def getPermutation(self, n: int, k: int) -> str:factorial [1]for i in range(1, n):factorial.append(factorial[-1] * i)k - 1ans list()valid [1] * (n 1)for i in range(1, n 1):order k // factorial[n - …

OSPF基本配置

原理概述 OSPF 是一种应用非常广泛的基于链路状态的动态路由协议&#xff0c;它具有区域&#xff08; Area )化的层次结构&#xff0c;扩展性好&#xff0c;收敛速度快&#xff0c;适合部署在各种规模的网络上。 在 OSPF 中&#xff0c;每台路由器都必须有一个 Router-I…