如何修复';TypeError:应为字符串或字节对象';Python中的错误

如何修复';TypeError:应为字符串或字节对象';Python中的错误,python,sql,oracle,sql-insert,Python,Sql,Oracle,Sql Insert,我想在表中插入一行。但是我得到了TypeError:这个错误应该是字符串或字节对象 回溯(最近一次调用上次):文件 “d:\Git\Repos\mavi\oracle\u connection.py”,中的第19行 c、 准备(查询,{“expr”:expr,“expr2”:expr2})类型错误:应为字符串或字节对象 如何解决此问题?请尝试: c.prepare(QUERY) c.executemany(None, [{"expr":expr, "expr2":expr2}])

我想在表中插入一行。但是我得到了TypeError:这个错误应该是字符串或字节对象

回溯(最近一次调用上次):文件 “d:\Git\Repos\mavi\oracle\u connection.py”,中的第19行 c、 准备(查询,{“expr”:expr,“expr2”:expr2})类型错误:应为字符串或字节对象

如何解决此问题?

请尝试:

c.prepare(QUERY)      
c.executemany(None, [{"expr":expr, "expr2":expr2}])
从文档中可以看出,您应该将参数传递给
executemany
,而不是
prepare


您发布的代码仅包含21行。你确定你没有漏掉什么吗?@Hampusralson是的,有评论,我编辑了Şevval,你能描述一下你的表以便我们能看到列的数据类型吗?@BarbarosÖzhan,顺序,int,string,string,intI think,这就解释了问题,因为替换变量
expr
用于
整数
string
clob
同时出现。现在它给出了这个错误“c.executemany(None,[{“expr”:expr,“expr2”:expr2}])cx_Oracle.DatabaseError:ORA-00917:缺少逗号”,这可能是因为“PACKAGE BODY”列的名称中有一个空格,您应该在引号中指定它。我如何修复它?我应该如何代表它?
c.prepare(QUERY)      
c.executemany(None, [{"expr":expr, "expr2":expr2}])