pg_get_function_identity_arguments(func_oid)
描述:获取参数列表来确定一个函数(不带默认值)。
返回类型:text
备注:pg_get_function_identity_arguments返回需要的参数列表用来标识函数,这种形式需要在ALTER FUNCTION中使用,并且这种形式省略了默认值。
pg_get_function_result(func_oid)
描述:获取函数的RETURNS子句。
返回类型:text
备注:pg_get_function_result为函数返回适当的RETURNS子句。
pg_get_indexdef(index_oid)
描述:获取索引的CREATE INDEX命令。
返回类型:text
示例:
""
openGauss=# select * from pg_get_indexdef(16416); pg_get_indexdef ------------------------------------------------------------------------- CREATE INDEX test3_b_idx ON test3 USING btree (b) TABLESPACE pg_default (1 row)pg_get_indexdef(index_oid, dump_schema_only)
描述:获取索引的CREATE INDEX命令,仅用于dump场景。对于包含local索引的间隔分区表,当dump_schema_only为true时,返回的创建索引语句中不包含自动创建的分区的local索引信息;当dump_schema_only为false时,返回的创建索引语句中包含自动创建的分区的local索引信息。对于非间隔分区表或者不包含local索引的间隔分区分区表,dump_schema_only参数取值不影响函数返回结果。
返回类型:text
示例:
openGauss=# CREATE TABLE sales openGauss-# (prod_id NUMBER(6), openGauss(# cust_id NUMBER, openGauss(# time_id DATE, openGauss(# channel_id CHAR(1), openGauss(# promo_id NUMBER(6), openGauss(# quantity_sold NUMBER(3), openGauss(# amount_sold NUMBER(10,2) openGauss(# ) PARTITION BY RANGE( time_id) INTERVAL('1 day') openGauss-# openGauss-# ( openGauss(# partition p1 VALUES LESS THAN ('2019-02-01 00:00:00'), openGauss(# partition p2 VALUES LESS THAN ('2019-02-02 00:00:00') openGauss(# ); CREATE TABLE openGauss=# create index index_sales on sales(prod_id) local (PARTITION idx_p1 ,PARTITION idx_p2); CREATE INDEX openGauss=# -- 插入数据没有匹配的分区,新创建一个分区,并将数据插入该分区 openGauss=# INSERT INTO sales VALUES(1, 12, '2019-02-05 00:00:00', 'a', 1, 1, 1); INSERT 0 1 openGauss=# select oid from pg_class where relname = 'index_sales'; oid ------- 24632 (1 row) openGauss=# select * from pg_get_indexdef(24632, true); pg_get_indexdef -------------------------------------------------------------------------------------------------------------------------- CREATE INDEX index_sales ON sales USING btree (prod_id) LOCAL(PARTITION idx_p1, PARTITION idx_p2) TABLESPACE pg_default (1 row) openGauss=# select * from pg_get_indexdef(24632, false); pg_get_indexdef ------------------------------------------------------------------------------------------------------------------------------------ -------------------- CREATE INDEX index_sales ON sales USING btree (prod_id) LOCAL(PARTITION idx_p1, PARTITION idx_p2, PARTITION sys_p1_prod_id_idx) TA BLESPACE pg_default (1 row
最后修改时间:2022-11-05 10:34:42
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




