---
title: 核对数据库迁移结果
description: "1. 统计达梦数据基础信息。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdbs/JointSolution/oracle-migration/kunpengoralcemigs_01_0016.html
sourcePath: /source/zh/kunpengdbs/JointSolution/oracle-migration/kunpengoralcemigs_01_0016.html
indexId: 58b34a921a1c9dfb17704109cce6a8afdd6a661fc19e6df4415358fda914892683
---
# 核对数据库迁移结果

1. 统计达梦数据基础信息。

  a. 统计页大小
    1 select page;

  b. 通过编码格式
    1 select unicode;

  c. 统计大小写敏感参数
    1 select case_sensitive

2. 统计达梦数据中的对象以及表数据量。

  a. 根据指定用户统计用户下的各对象类型和数目。
    1 select object_type,count(*) from all_objects where owner='OA8000_DM2015' group by object_type;

  b. 统计指定用户下所有的对象，并记录到新的记录表中。
    1 2 create table dm_objects(obj_owner varchar(100),obj_name varchar(100),obj_type varchar(50)); insert into dm_objects select owner,object_name,object_type from all_objects where owner='OA8000_DM2015';

  c. 统计每个表的数据量到表数据记录表。
    1 2 3 4 5 6 7 8 9 10 11 create table dm_tables(tab_owner varchar(100),tab_name varchar(100),tab_count int); begin for rec in (select owner,object_name from all_objects where owner='OA8000_DM2015' and object_type='TABLE') loop begin execute immediate 'insert into dm_tables select '''|| rec.owner ||''','''|| rec.object_name ||''',count(*) from '|| rec.owner || '.' || rec.object_name; exception when others then print rec.owner || '.' || rec.object_name || 'get count error'; end; end loop; end; select * from dm_tables;

  d. 对比达梦数据库中对象和Oracle库中对象以及数据量差异。

    - 比对对象，找出没有迁移的对象：
      1 2 3 4 select * from Oracle_objects where (obj_owner,obj_name) not in ( select obj_owner,obj_name from dm_objects ) --and obj_type='TABLE' ;


    - 比对表数据量，找出数据量不相等的表：
      1 2 3 select a.tab_owner,a.tab_name,a.tab_count-b.tab_count from Oracle_tables a, dm_tables b where a.tab_owner=b.tab_owner and a.tab_name=b.tab_name and a.tab_count-b.tab_count<>0
