Postgre SQL   发布时间:2022-05-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了postgresql:如何上传二进制数据大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
POSTGResql的二进制数据类型为bytea,可最多保存2G的数据。在ADO、ODBC等接口,可通过带参数化的插入sql语句上传二进制。
然而在某些接口、sql语句无法进行参数绑定,或者某些语言没有二进制的类型,或者接口的不兼容等原因,常无法上传二进制数据。
碰到这种情况下,必须在客户端将二进制转化为一定规则的字符序列,然后插入语句时,来个显示转换
cast('字符序列' as bytea).
二进制转化为字符序列的规则:
分析每个字节,当其ASCII值在0到31,127到255,或为39、92,请将这字节转化为3位的八进制字符串,前面加上2个反斜杠,如chr(39)表示为 //047. 其他ascii值为可显示字符,不变,当然你也可全部转化为八进制,但这样整个字符串太长,浪费空间。
如二进制序列 chr(0)+'a'+'b'+chr(233)+chr(25)+'c'转化为字符序列为:
//000ab//351//031c
上传的时候再来个显示转换,如 Insert into @R_502_5991@1 (aa) values (cast(' //000ab//351//031c' as bytea))
如果二进制数据太大,可分次上传,用||连接符连接起来,如:
insert into @R_502_5991@1 (ID,aa) values (1,cast('序列1' as bytea))
update @R_502_5991@1 set aa=aa||cast('序列2' as bytea) where ID=1
...

大佬总结

以上是大佬教程为你收集整理的postgresql:如何上传二进制数据全部内容,希望文章能够帮你解决postgresql:如何上传二进制数据所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: