注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

PostgreSQL 数据库跨版本迁移 bytea 字段内容显示不一致  

2011-04-22 20:20:34|  分类: PG备份与恢复 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

    

             今天在做数据库迁移时发现有张表的数据不对,这张表有个 bytea 字段,迁移后显示的内容不对,
源库是 8.4.3 版本目标库是9.0.3 版本, 一时找不到原因,后来在德哥的指导下,只要在目标库设置一个
bytea_output 参数就行,例如可以在导入脚本里加上  set bytea_output = 'escape'


--1表结构
cmp=> \d tbl_temp
       Table "cmp.tbl_temp"
   Column   |            Type             | Modifiers
------------+-----------------------------+-----------
 txman      | character varying(100)      |
 mcc        | character varying(10)       |
 name   | character varying(100)      |
 filebytes  | bytea                       |
 startprice | numeric                     |
 endprice   | numeric                     |
 starttime  | timestamp without time zone |
 endtime    | timestamp without time zone |
 createtime | timestamp without time zone |

   
--2PostgreSQL 9.0 手册介绍   
bytea_output (enum)
    Sets the output format for values of type bytea. Valid values are hex (the default) and escape (the traditional PostgreSQL format). See Section 8.4 for more information. The bytea type always accepts both formats on input, regardless of this setting. 
    
           原因很明显了,由于在PostgreSQL老版本里(8.4以前)  bytea_output 参数默认为 "escape" , 而 PostgreSQL 9.0
的这个参数被默认设置成了 "hex" ,所以在导入到 PostgreSQL9 版本里,bytea字段内容就不对了。在数据导完后,建议
将$PGDATA/postgresql.conf 的这个参数也改下,设置成 "escape" , 不然那个字段应用显示依然会有问题。

  评论这张
 
阅读(26599)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016