【YashanDB知识库】如何从内存中获取SQL语句的执行计划

简介

目前从PostgreSQL迁移到YashanDB后,需要进行数据校验。下面给出user1模式从PostgreSQL迁移到YashanDB进行数据行数比对的示例。

详情

获取PostgreSQL精确行数

创建table_count,用于存储行数(建议:使用现有的迁移模式user1,并把table_count创建在user1用户下)

create table user1.table_count (owner varchar(200),table_name varchar(200),num_rows int);

获取user1模式下的所有表的行数

DO $$

DECLARE

one_row record;

stmt varchar(200);

num_rows int;

BEGIN

 

EXECUTE 'truncate table table_count';

FOR one_row IN (select schemaname, tablename from pg_tables where upper(schemaname)=upper('user1') and upper(tablename)!=upper('table_count')) loop

 

stmt := 'select count(*) from ' || one_row.schemaname || '.' || one_row.tablename || '';

raise notice '%', stmt;

EXECUTE stmt into num_rows;

raise notice '%', num_rows;

insert into table_count values(upper(one_row.schemaname), upper(one_row.tablename), num_rows);

END loop;

commit;

END $$;

获取YashanDB精确行数

从PostgreSQL迁移到YashanDB迁移user1模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值