位置: 编程技术 - 正文

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

  • 财产租赁所得怎么计算个人所得税
  • 转账支票一定要收款人去取吗
  • 增值税扣费
  • 代开专票收入未超30万税务怎么处理
  • 预缴税款什么时候可以手动填写申报表
  • 按季度支付贷款利息权责发生制
  • 新个税工资薪金和综合所得
  • 长期股权投资的交易费用计入哪里
  • 资产减值准备的税务处理
  • 增值税会计核算设置的会计科目有哪些
  • 发票到了款未付账务处理
  • 城建税和教育费附加可以税前扣除吗
  • 行政单位的存货是什么
  • 建筑公司挂靠项目账务怎么做?
  • 保证金算费用吗
  • 职工教育经费的扣除标准是什么
  • 公司认缴增资需要什么流程呢
  • 未分配利润期末余额怎么算出来
  • 预收账款期末余额在贷方
  • 开出技术服务费怎么结转成本
  • 定额发票上除了发票章还有其他章吗
  • 支付工程款不得超60天
  • 非金融企业向金融企业借款的利息
  • 买购物卡发福利怎么发
  • 特种设备年检费怎么开具发票
  • 增值税发票遗失证明模板
  • 如何解决win7系统搜不到蓝牙耳机
  • 固定资产进项税额怎么做账
  • 单位房子可以卖吗
  • 逾期未申报如何申报
  • 新购固定资产账务处理
  • 一般纳税人企业注销流程
  • nvm安装及全局配置node
  • 混合销售会计处理
  • 股权转让有溢价怎么做账
  • thinkphp yii
  • 小规模纳税人应纳增值税额的计算
  • yii框架手册
  • 第三方代收的款项是什么意思
  • web应用程序的主要组成部分
  • web 自动化测试
  • 红外图像识别算法
  • flask框架入门
  • linux的nfs如何使用
  • php生成zip压缩包
  • pgrep命令详解
  • python tle
  • phpcms怎么样
  • 什么是完税证明?完税证明丢了怎么办公司
  • 已经红冲的发票显示正常
  • ubuntu16安装教程
  • 员工福利费的账务处理
  • 计提应收账款坏账准备属于谨慎性吗
  • 房地产城建税计税依据
  • 新成立的小公司财务怎么管理
  • 年终奖个人所得税税率表
  • 信用减值损失在利润表怎么填列
  • 付给其他公司的服务费怎么记账
  • 行政单位年终奖的相关发放规定
  • centos6.9 yum
  • 重装系统注册表会重置吗
  • centos挂载点
  • vmware12安装教程图解
  • 系统密码设置
  • win10系统如何关闭屏保功能
  • mac如何全屏窗口
  • PQV2ISECURITY.EXE - PQV2ISECURITY是什么进程 有什么用
  • pavkre.exe - pavkre是什么进程 作用是什么
  • django实现登录注册功能
  • 原生js有用吗
  • jquery dom对象
  • android ui开发
  • javascript文本框获得焦点
  • netbeans12.0安装教程
  • jquery使用方法
  • 英语流利说的简单介绍
  • Python第三方库的常见安装方法有
  • 江苏省国家税务局电话号码
  • 税务局分局副局长什么级别的干部
  • 携程怎么订
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设