gpt4 book ai didi

python - 使用 cx_Oracle 从 Oracle 提取数据时返回空字符串代替 Oracle NULL/Python None

转载 作者:行者123 更新时间:2023-11-30 22:08:28 26 4
gpt4 key购买 nike

当我使用 cx_Oracle 模块提取数据时,不会返回 None 来代替 Oracle NULL。此时,我正在使用以下函数将 None 转换为空字符串。

def xstr(s):
if s is None:
return ''
return str(s)

有没有办法让 cx_Oracle 模块返回空字符串而不是 None?

最佳答案

您可以使用输出类型处理程序和输出转换器来转换这种方式。像这样的东西。

def OutConverter(value):
if value is None:
return ''
return value

def OutputTypeHandler(cursor, name, defaultType, size, precision, scale):
if defaultType in (cx_Oracle.STRING, cx_Oracle.FIXED_CHAR):
return cursor.var(str, size, cursor.arraysize, outconverter=OutConverter)

connection.outputtypehandler = OutputTypeHandler

上面的代码将从数据库返回的任何空字符串转换为空字符串。

关于python - 使用 cx_Oracle 从 Oracle 提取数据时返回空字符串代替 Oracle NULL/Python None,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52148595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com