云数据库 GAUSSDB-失效重编译:示例
时间:2024-11-13 14:46:35
示例
- 一次性入库举例:
--设置如下参数: SET ddl_invalid_mode='invalid'; SET enable_force_create_obj=on; --新建函数,入参使用的类型不存在。 CREATE OR REPLACE FUNCTION func1(var type_not_exist) RETURN int IS BEGIN RETURN NULL; END; / --执行结果。 WARNING: Type type_not_exist does not exist. WARNING: Function created with compilation errors. CREATE FUNCTION --查询状态。 SELECT proname,valid FROM pg_object obj JOIN pg_proc proc ON obj.object_oid = proc.oid AND proname = 'func1' AND propackageid = 0; --执行结果。 proname | valid ---------+------- func1 | f (1 row) --新建PACKAGE,入参使用的类型不存在。 CREATE OR REPLACE PACKAGE pkg IS FUNCTION func1(var type_not_exist) RETURN int; END pkg; / --执行结果。 WARNING: Type type_not_exist does not exist. WARNING: Package created with compilation errors. CREATE PACKAGE CREATE OR REPLACE PACKAGE BODY pkg IS FUNCTION func1(var type_not_exist) RETURN int AS DECLARE BEGIN RETURN NULL; END; END pkg; / --执行结果。 WARNING: Type type_not_exist does not exist. WARNING: Package Body created with compilation errors. CREATE PACKAGE BODY --查询状态。 SELECT pkgname,object_type,valid FROM pg_object obj JOIN gs_package pkg ON obj.object_oid = pkg.oid AND pkgname = 'pkg'; pkgname | object_type | valid ---------+-------------+------- pkg | B | f pkg | S | f (2 rows) --重新创建入参使用的类型。 CREATE TYPE type_not_exist AS (f1 int, f2 text);
- 失效重编译功能举例
--运行失效重编译高级包。 CALL pkg_util.gs_compile_schema('public', false, 1); --执行结果。 INFO: The number of executions is 1 INFO: successful gs_compile_schema ------------------- (1 row) --查询状态。 SELECT proname,valid FROM pg_object obj JOIN pg_proc proc ON obj.object_oid = proc.oid AND proname = 'func1' AND propackageid = 0; proname | valid ---------+------- func1 | t (1 row) SELECT pkgname,object_type,valid FROM pg_object obj JOIN gs_package pkg ON obj.object_oid = pkg.oid AND pkgname = 'pkg'; pkgname | object_type | valid ---------+-------------+------- pkg | S | t pkg | B | t (2 rows) --执行函数。 CALL func1(null); func1 ------- (1 row) CALL pkg.func1(null); func1 ------- (1 row) --删除已创建的对象。 DROP FUNCTION func1; DROP PACKAGE pkg; DROP TYPE type_not_exist;
- 级联失效功能举例
CREATE TYPE type1 AS (f1 int, f2 text); CREATE OR REPLACE FUNCTION func1(var type1) RETURN varchar IS BEGIN RETURN NULL; END; / SELECT proname,valid FROM pg_object obj JOIN pg_proc proc ON obj.object_oid = proc.oid AND proname = 'func1' AND propackageid = 0; proname | valid ---------+------- func1 | t (1 row) DROP TYPE type1; --查询状态。 SELECT proname,valid FROM pg_object obj JOIN pg_proc proc ON obj.object_oid = proc.oid AND proname = 'func1' AND propackageid = 0; proname | valid ---------+------- func1 | f (1 row) --函数未被删除,函数依然存在。 SELECT proname FROM pg_proc WHERE proname = 'func1' AND propackageid = 0; proname --------- func1 (1 row) --删除已创建的对象。 DROP FUNCTION func1;
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-1719.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章
- 编译构建有什么作用_ 编译构建 CodeArts Build_软件开发编译构建-华为云
- 华为鸿蒙编译器镜像下载
- GaussDB视频教程_gaussdb查看表结构语句_高斯数据库视频教程_华为云
- 编译构建服务快速试用
- GaussDB考试_GaussDB数据库考试_高斯数据库考试_华为云
- GaussDB工具_gaussdb怎么读_高斯数据库工具_华为云
- 分布式云原生集合示例_华为云分布式云原生_华为云UCS集合示例
- GaussDB数据库考试_GaussDB认证_高斯数据库考试_华为云
- GaussDB学习_gaussdb教程_高斯数据库学习_华为云
- 软件开发编译构建的优势_软件开发生产线_编译构建CodeArts Build-华为云