# 转信创或全新实施信创准备事项
# 标准库字段映射关系表
下表中是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),,但实际数据没有完全满足该约束,导致转库加约束后无法正常插入数据
该问题需研发确认约束是否标准添加或不需要,或是能够修复数据解决
9.高版本标准产品中没有视图、函数、存储过程、触发器,低版本中可能有部分类型转换函数(例如8.1sp1之前,使用金仓数据库时需要增加);转库过程中可以先进行数据迁移,之后再确认视图、函数等是否属于标准产品,联系其归属厂商确认无误后迁移