# 转信创或全新实施信创准备事项

# 标准库字段映射关系表

下表中是V5标准产品规范的字段类型对照,在进行转库时拿给数据库厂商做参照

MYSQL ORACLE SQLSERVER POSTGRESQL DM KINGBASE(兼容Oracle) OSCAR GBASE HBM文件 POJO类型 场景
BIGINT INTEGER BIGINT INT8 BIGINT INT8 BIGINT BIGINT long java.lang.Long 主键
DATE DATE DATETIME TIMESTAMP(0) TIMESTAMP(0) TIMESTAMP(0) TIMESTAMP(0) TIMESTAMP(0) timestamp java.util.Date 日期
DATETIME DATE DATETIME TIMESTAMP(0) TIMESTAMP(0) TIMESTAMP(0) TIMESTAMP(0) TIMESTAMP(0) timestamp java.util.Date 日期时间
DECIMAL NUMBER NUMERIC NUMERIC NUMBER NUMERIC NUMBER NUMBER double java.lang.Double 小数
INT INTEGER INT INT4 INT INT4 INTEGER INT integer java.lang.Integer 整数
LONGBLOB BLOB IMAGE BYTEA BLOB BYTEA BLOB BLOB string java.lang.String 二进制对象
LONGTEXT CLOB NTEXT TEXT CLOB TEXT CLOB CLOB string java.lang.String 大文本
SMALLINT NUMBER(4) SMALLINT INT2 SMALLINT INT2 SMALLINT SMALLINT integer java.lang.Integer 数字枚举
VARCHAR VARCHAR2 NVARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR string java.lang.String 文本

# 转信创须知

1.信创环境下,截图、打印等服务可能需要单独适配,且涉密环境下无法支持 2.部署信创环境时注意OA小版本差异,例如: 现有一套 A8 V9.0sp1 (0731版本),要转为信创A8N环境 那么必须也下载A8N V9.0sp1(0731版本)来部署信创环境,不能使用A8N V9.0sp1(0930版本)的包来部署 这会导致数据库数据是0731转版过来的,而程序是0930,无法正常兼容(不同小版本数据结构有差异) 3.信创数据库驱动不要使用信创安装包里面自带的,必须从数据库安装目录下获取,并且保证中间件lib下只有一个驱动文件

# 转库注意事项:

1.目标数据库配置必须满足:

  • 大小写不敏感
  • 字符集编码utf8
  • 不要重命名原库的INDEX索引名称,产品是根据索引名称判断索引是否存在

2.转至信创数据库时,信创数据库可能有多种兼容模式, 必须选择OA支持的模式:

  • 人大金仓:目前只支持oracle模式
  • 虚谷:oracle模式
  • GaussDB(for openGauss):Postgresql模式
  • 海量:Postgresql模式
  • 瀚高:Postgresql模式
  • OceanBase:mysql模式
  • 亚信AntDB:mysql模式
  • 中兴GoldenDB:mysql模式
  • 腾讯TDSQL:mysql模式
  • 京东StarDB:兼容mysql8

3.源数据库与目标数据库字段类型映射关系参考: https://open.seeyoncloud.com/v5devCTP/38/57.html#%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E8%AE%BE%E8%AE%A1%E8%A7%84%E8%8C%83 例如: mysql、sqlserver的smallint转至金仓时,目标字段类型应为int2,而不是tinyint

4.OA支持的数据库部署架构:

  • 单机模式
  • 主从模式(推荐)
  • RAC模式

5.转库前表数量与转库后表数量一致,索引没有丢失(建议转库后使用环境检查工具扫描索引

6.转库过程没有报错,如果有报错需要全部处理完成

7.部分信创数据库没有标准适配,可能导致后续无法正常升级(尤其注意驱动类名是数据库厂商独有的,而不是普通的pg、mysql、oracle驱动)

8.原库中某些表字段带有非空检查约束(NOt Validated),,但实际数据没有完全满足该约束,导致转库加约束后无法正常插入数据

1731476830208.png

1731476861394.png

该问题需研发确认约束是否标准添加或不需要,或是能够修复数据解决

9.高版本标准产品中没有视图、函数、存储过程、触发器,低版本中可能有部分类型转换函数(例如8.1sp1之前,使用金仓数据库时需要增加);转库过程中可以先进行数据迁移,之后再确认视图、函数等是否属于标准产品,联系其归属厂商确认无误后迁移

创建人:wangyxyf
修改人:het、wangyxyf