注册
大小写转换
技术分享/ 文章详情 /

大小写转换

火禾 2023/05/18 4605 0 0

需求:
将原大小写不敏感的库迁移至大小写敏感的库,并将原带有双引号表名为小写的表及带有双引号列名为小写的列转换为大写
目录
1、 大小写不敏感的库创建测试表并查询数据 4
2、 使用DTS工具将表结构导出 4
3、 使用DTS工具将表结构导入 8
4、 迁移表数据 12
5、 查询数据 18
6、 实际操作步骤 18
7、 失败回退步骤 19

1、大小写不敏感的库创建测试表并查询数据
drop table "v_test";
create table "v_test" (id int ,name varchar(20));
insert into "v_test" VALUES (1,'a');
insert into "v_test" VALUES (2,'A');
commit;
select * from "v_test" where name='a';
image.png
2、使用DTS工具将表结构导出
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
3、使用DTS工具将表结构导入
将建表语句中为小写带有双引号的表名转换为大写并保存为新的表结构.sql文件用于导入
CREATE TABLE "SYSDBA"."V_TEST"
(
"id" INT NULL,
"name" VARCHAR(20) NULL
);
image.png
image.png
image.png
image.png
image.png
image.png
再去导入库查询,表名已转换为大写
image.png
4、迁移表数据
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
至此,数据迁移成功
5、查询数据
image.png
image.png
在大小写敏感的达梦数据库,select * from v_test where NAME=’a’;可以严格查询出NAME列值为a的数据
6、实际操作步骤
(1)、将现有大小写不敏感的库表结构导出为SQL文件
(2)、停止原库,使用dmrman工具做物理备份
(3)、初始化新库,大小写参数改为敏感,其他参数保持一致
(4)、将第二步的备份使用dmrman工具导入到第三步新建的库中
(5)、使用管理工具登录新建库中,批量删除表
(6)、手动编辑第一步导出的SQL文件,将小写批量替换为大写
(7)、将第六步编辑的SQL导入第三步初始化的新库中
(8)、使用DTS工具将表数据由原大小写不敏感的库导入到新建大小写敏感库
(9)、应用验证

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服