位置: 编程技术 - 正文

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数据库管理的工具)

  • 增值税发票抵扣是什么意思
  • 工程管理服务属于哪个国标行业
  • 往来票据如何开具
  • 所得税季度预交税率是多少
  • 残疾人保障金零申报怎么填写
  • 认缴注册资本的风险
  • 税务注销交什么税
  • 投资资产包括哪些会计科目
  • 怎么核算关联企业的借款费用?
  • 建设单位对施工单位的管理要求
  • 卖下脚料怎么做分录
  • 保教费免征增值税政策
  • 企业职工福利费标准是什么
  • 房地产开发企业会计科目
  • 企业购买硬件与软件该如何做账?
  • 一个月怎么控制花一千块
  • 营改增对资产负债表的影响
  • 房产印花税缴纳
  • 当月进项已认证,发现票有问题怎么处理
  • 个税返还增值税申报表填哪里
  • 财务内账外账的优缺点
  • 对方开具红字发票过来怎么做进项税转出
  • 一次性劳务费需要交税吗
  • 疫情期间企业应该承担哪些责任
  • 派发现金红利怎么知道有没有
  • 增值税发票为什么要勾选认证
  • 苹果手机怎么看国行还是美版
  • bioss设置
  • wifi认证失败怎么办
  • 土地 补偿
  • 十天学会php教程
  • 代扣代缴个人所得税账务处理
  • php字符转换成数字
  • Laravel 5.5官方推荐的Nginx配置学习教程
  • php自定义字段
  • php 创建对象
  • php获取浏览器ua
  • 深度学习实战(十):使用 PyTorch 进行 3D 医学图像分割
  • vue父子组件传值
  • 年末结转利润分配各明细账户
  • 帝国cms安装教程
  • 文化事业建设费的征收范围
  • 关于帝国战争的游戏
  • PHPCMS 是 ThinkPHP 开发的吗?
  • 交通运输企业有什么优惠政策
  • 生产部门使用的无形资产摊销
  • 发行公司债券发生的折价
  • mysql数据类型和java对应
  • SQL SERVER 2000通讯管道后复用劫持
  • sqlserversa用户登录失败
  • 公司收到银行发放贷款会计分录
  • 油卡预付卡发票能入费用吗怎么入账
  • 查补以前年度税款
  • 支票存根联丢失可以用回单代替么
  • 现金比率的计算公式是什么意思
  • 交易性金融资产的入账价值
  • 工程类企业存货包括哪些
  • 行转列sql函数
  • 安装win8系统需要什么条件
  • vista windows
  • initcause
  • windows 注册表命令
  • 怎么更改win7
  • 电脑一直显示windowsxp怎么办
  • 电脑xp系统桌面
  • linux命令tee
  • win7电脑能玩啥游戏
  • javascript字符串操作函数
  • 什么是自然数
  • android!
  • linux中shell脚本实验总结
  • Python爬取网易云音乐歌单内歌曲歌手封面播放地址
  • scrollview嵌套flatlist
  • 利用html css javascript做一个网页
  • 增值额未超过扣除项目金额20%是什么意思
  • 北京电子税务局实名认证
  • 一级稽查体制
  • 河北税务云办税厅官方
  • 内蒙古国家税务总局电子税务局官网
  • 小规模企业所得税申报流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设