位置: 编程技术 - 正文

SQL Server数据迁移至PostgreSQL出错的解释以及解决方案(sqlserver2008数据迁移)

编辑:rootadmin

推荐整理分享SQL Server数据迁移至PostgreSQL出错的解释以及解决方案(sqlserver2008数据迁移),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql server的数据如何迁移到mysql,SQL server数据迁移原因,sql数据库迁移,SQL server数据迁移hana数据库表名,sql server的数据如何迁移到mysql,sql server数据文件迁移,SQL server数据迁移hana数据库表名,SQL server数据迁移hana数据库表名,内容如对您有帮助,希望把文章链接给更多的朋友!

问题重现:

1、PG客户端:

2、SQL Server产生数据

然后通过java程序进行获取数据并插入到PG,同样会得到错误信息:

首先我们认为此为gb转化到UTF8时,发生了无法转化的错误。经查UTF8是变长的, 1-6个字节。他的编码规则如下:

Bits Last code point Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 7 U+F 0xxxxxxx U+FF xxxxx xxxxxx U+FFFF xxxx xxxxxx xxxxxx U+1FFFFF xxx xxxxxx xxxxxx xxxxxx U+3FFFFFF xx xxxxxx xxxxxx xxxxxx xxxxxx U+7FFFFFFF x xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx

而0x是符合UTF8规则的。这就使我们非常诧异。然后我们发现有两点继而确认了问题:1、

2、

Terminating character

Indicated by

Tab

t

This is the default field terminator.

Newline character

SQL Server数据迁移至PostgreSQL出错的解释以及解决方案(sqlserver2008数据迁移)

n

This is the default row terminator.

Carriage return/line feed

r

Backslash1

\

Null terminator (nonvisible terminator)2

Any printable character (control characters are not printable, except null, tab, newline, and carriage return)

(*, A, t, l, and so on)

String of up to printable characters, including some or all of the terminators listed earlier

(**t**, end, !!!!!!!!!!, t—n, and so on)

Source: Server处理是不相同的,所以在这里出现了错误。

而导致这一问题的PG具体代码如下(src/backend/utils/mb/wchar.c的pg_verify_mbstr_len):

report_invalid_encoding函数是将错误信息返回,也就是

invalid byte sequence for encoding "UTF8": 0x而真正导致这一问题的就是:!IS_HIGHBIT_SET(*mbstr)当*mbstr为0x时进入判断,然后进而判断*mbstr是否为,当为时,直接进入函数report_invalid_encoding报错。

所以出现此问题的原因是PG和SQL Server对null的处理是不相同的。

处理方案 :

1、将SQL Server源数据进行修改方法,

2、对应用进行修改,获取到SQL Server数据时,将数据进行转化,和第一种方法异曲同工。

标签: sqlserver2008数据迁移

本文链接地址:https://www.jiuchutong.com/biancheng/319669.html 转载请保留说明!

上一篇:CentOS中运行PostgreSQL需要修改的内核参数及配置脚本分享(centos执行sh)

下一篇:DB2 UDB V8.1管理学习笔记(一)(db2数据库管理的工具)

  • 个体工商户的免税政策
  • 财务刷卡手续费怎么处理
  • 制造费用月末不可能有余额
  • 固定资产盘亏怎么算
  • 技术转让所得的税收优惠
  • 对方把发票丢了可以重开吗
  • 一次性发放年终奖怎么税务筹划
  • 房租合同印花税计算方法
  • 其他应付款款
  • 职工基本医疗保险单位交的钱去哪里了
  • 建安行业外地预缴工会经费
  • 扣缴个人所得税报告表
  • 企业的其他账簿怎么做
  • 差旅补助是否并入工资
  • 个人社保部分工资计入哪个科目
  • 资产总额是资产负债表中的哪个数
  • 外籍人员取得数月奖金怎么交税
  • ppt另存为在哪儿
  • 财政拨款的贴息怎么计算
  • 收到银行电子汇票已入账怎么做账
  • 项目投资总额是什么
  • 多源传感器融合
  • Vue3 入门笔记 ---- 利用Element Plus对页面进行布局划分以及实现左侧公共菜单
  • 以股权出资成立公司的模板
  • 房产税土地税用不用计提
  • php 图片
  • 用smart原则改写年底前完善客户资料
  • 左右等宽上下等高的字有哪些
  • javaweb实验一
  • 大数据相关框架
  • java异常编程题
  • 一般纳税人注销税务流程
  • 公司为员工代扣代缴
  • 自然人所属税务机关怎么选
  • 织梦网站怎么添加关键词
  • dedecms安装及配置
  • 有没有网上学电脑的
  • 银行存钱转账
  • 融资租赁确认的具体条件
  • mongodb重置密码
  • 应收应付会计分录大全
  • 扣缴境外公司增值税
  • 进项3个点销项13个点是需要交10个点的税吗
  • 审计岗位能力要求是什么
  • 库存盘亏进项税怎么抵扣
  • 小规模纳税人购进税控收款机
  • 报表的应付账款怎么算
  • 工程的挂靠取得收入怎么做账?
  • 公司借给股东钱
  • 坏账确认无法收回
  • 预支报销怎么做账
  • 农产品怎么自产自销
  • 管理费用处理的是
  • 加计扣除所得税申报表怎么填写
  • 餐费补贴属于工资还是福利费
  • 试运行收入冲减哪个项目
  • 其他货币资金都有啥
  • 设备信息windows6.1
  • ubuntu系统如何切换中文
  • freebsd操作命令
  • win10累积更新 卡住
  • ubuntu rhythmbox乱码解决方法
  • win8怎么关闭实时保护
  • linux没有ssh
  • sunasServ.exe - sunasServ是什么进程 有何作用
  • 会声会影win7怎么兼容
  • software protection延迟启动
  • mysql删除key
  • 小马kms激活工具
  • 笔记本怎么设置定时关机
  • linux awk nr
  • 请问在javascript程序中
  • 将jquery.qqFace.js表情转换成微信的字符码
  • android:ListView的局部刷新
  • android 基础
  • unity cpu优化
  • javascript中对象的含义
  • python中运算符/和//的区别
  • 保险免保费是什么意思
  • 矿产资源税怎样征收
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设