暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片
GBase8g向GBase8s数据迁移
2155
3页
16次
2020-08-25
免费下载
GBase8g
向
GBase8s
数据库进行迁移
背景
因业务需求,需要将以往项目使用的
GBase8g
数据库中的数据,迁移到
Gbase8s
数据
库中。在此记录迁移遇到的一些问题和解决方法。
目标
将
GBase8g
的数据成功迁移到
GBase8t
后,原有程序功能可以正常运行
问题列表
自定义排序
1
、问题描述:
由于业务需求,需要将某个字段根据自定义顺序进行排序。
例如:数据中
ledA
的值保存为
1,2,3
数值形式,但页面上要以
1,3,2
的顺序进行展示
在
GBase8g
中可以使用
order by Filed(
字段
,1,3,2)
的方法进行自定义排序,但迁移后在
GBase8s
中无法使用这样的方法。
2
、解决方法:
可以引用临时表的方法来实现该需求。
建排序临时表“
sort_table”
,定义字段:
sort_seq
排序号,
sort_name
排序字段。
将需要自定义的排序顺序保存到
sort_name
中,对应的
sort_seq
写实际的顺序
例如:
sort_name sort_seq
1 1
3 2
2 3
使用:
join sort_table st on
字段
=st.sort_name order by st.sort_seq
的方式来实现自定义排序
disnct
数据内容
1
、问题描述:
在原有系统中,初始设计简单,没有考虑
sql
优化问题,数据查重直接使用如下语句
select dis#nct * from
表
A where XXX;
其中表
A
包含
blob,text
等大对象字段。
GBase8s
对
sql
要求严格,
dis#nct
大对象字段是
不推荐使用的
2
、解决方法:
优化数据结构及
sql
语句,尽量将不常用的大对象字段与经常使用的字段在数据表中
拆分开来,在
distinct
时只针对需要查重的字段进行操作,并使用索引。
字段是关键字
1
、 问题描述
在
GBase8g
中,
current
不是系统关键字,设计数据表时使用
current
作为当期值的字段
名称。但迁移到
GBase8s
后,
current
是系统关键字。程序中查询
current
的
sql
无法顺
利执行。
2
、 解决方法:
将查询
sql
优化,改写为表名
.
列名的方法进行数据查询。
日期格式
1
、 问题描述
在
GBase8g
中,日期格式若插入值为空时,默认的日期格式是填充空串
'0000-00-00 00:00:00'
。在
GBase8s
中不允许空串插入日期格式,在数据迁移时会
报异常。
2
、 解决方法:
在
GBase8g
数据库中,将内容为空串的日期修改为正确的统一初始值,之后再进行数
据迁移。
数据表迁移顺序
1
、 问题描述
在
GBase8g
与
GBase8s
的数据迁移工具中,只有数据表与数据的迁移步骤。若表中有索
引、自增列或视图时,在用迁移工具进行数据表和数据的迁移后,很难一次性将索引 、
视图等建立成功。
of 3
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜