Python读写Oracle的BLOB类型(cx_Oracle.BLOB转string)

cx_Oracle.BLOB是cx_Oracle.lob的一种类型,以二进制方式进行存储
LOB类型说明:有两种Lob,非常是Internal Lob和External Lob。所谓Internal Lob是指Lob数据存储在Oracle数据文件里,External Lob是指Lob数据存储在数据库外部的操作系统里。
Internale Lob包括:
1)CLOB (Character Lob):用于存储字符串类型的Lob,如文本和XML文件等,字符串已数据库字符集编码;
2)BLOB (Binary Lob):用于存储二进制类型的Lob;
3)NCLOB (National Character Lob):和CLOB类似,但字符串已国家字符集编码。
External Lob包括:
1)BFILE (Binary File Lob):数据库存储一个执行外部文件的指针,所以它是只读的

https://blog.csdn.net/dbanote/article/details/12706007(转)
cx_Oracle.BLOB有一个自带方法.read()可以将BLOB类型从cx_Oracle.BLOB对象转成bytes类型,然后即可通过str进行强制转换
bytes类型说明:二进制字节序列的形式记录所需记录的对象,至于该对象到底表示什么(比如到底是什么字符)则由相应的编码格式解码所决定。
http://www.liujiangblog.com/course/python/23(转)
例子:
            if data["INHOSPITAL_ECG_IMAGE_BASE64"]:
                data["INHOSPITAL_ECG_IMAGE_BASE64"] = str(data["INHOSPITAL_ECG_IMAGE_BASE64"].read())
            if data["PHEP_ECG_IMAGE_BASE64"]:
                data["PHEP_ECG_IMAGE_BASE64"] = str(data["PHEP_ECG_IMAGE_BASE64"].read())

解决方式参考自:https://blog.csdn.net/lpy123456/article/details/7653393

你可能感兴趣的:(Python读写Oracle的BLOB类型(cx_Oracle.BLOB转string))