Chen Sheng

岂曰无错 与子偕论 岂曰无正 与子偕证

« Mysql与Postgresql数据性能比较 (转)在UltraEdit的查找和替换中使用正则表达式 (转) »

PostgreSQL编码tips

今天折腾用vc6联接postgre sql 8.2。为了简化起见,不直接使用libpq  c api来开发。

我首先试用了oledb 驱动,问题多多

立即换成使用odbc。

初步工作正常:

针对int/bigint/vchar/timespam 的读写都正常。

针对bytea类型时出错。

经过琢磨,找出了解决办法

1)打开odbc源配置器,在选项--DataSource,第二页,选中:bytea as LO 。这是因为LO类型已经被抛弃了。

作出如上修改之后,如果数据长度小于8002则一切正常,如果大于8002则又会出现一个错误:

WARNING:  nonstandard use of \\ in a string literal at character

出现这个警告的原因是,新版本的postgre已经使用E来escape 字符,而odbc驱动程序还是采用\,我不知道如何修改。

只好打开服务器的

postgresql.conf

增加配置:

escape_string_warning = off

backslash_quote=on

这样,则使用ado 调用getchunk /appendchun都一切正常。

 

 

  • 相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Devo Build 80108

Copyright 2000-2008 @ chensheng.net. All Rights Reserved.
浙ICP备05087059号