类型错误:需要一个类似字节的对象,而不是在检索SQL表时列出

时间:2018-07-27 06:57:35

标签: mysql python-3.x

不幸的是,我是Python的新手,当很难分辨类型时,它变得令人困惑。

我想做的是在SQL上运行查询,但不是使用自己的SQL实例,而是使用经过编码的Python框架来帮我实现。据我了解,该方法在列表中使用一个值,然后将其作为查询运行。

一旦获得结果,它将在方法返回的列表中发送该行。该框架导入了mySQLdib库,因此可以按预期工作。

def query(self,queryStr):
        results = []
        try:
            self._cursor = self._connection.cursor(MySQLdb.cursors.DictCursor)
            self._cursor.execute(queryStr)
            for row in self._cursor.fetchall():
                results.append(row)
            self._connection.commit()
            self._cursor.close()
        except MySQLdb.Error as e:
            self.error("Error %d: %s" % (e.args[0], e.args[1]))

        self._dbLogFormatter(queryStr,self._callingName())
        self._dbLogFormatter(str(results),self._callingName())
return results

所以这就是我要执行的操作,运行查询并将结果放入列表中,但是它一直给我输入Type Error。

qry=[]
qry.append("select * from orders where cl_ord_id='"+clOrdId+"'")

results =mysql.query(qry)

它一直告诉我 TypeError:需要一个类似字节的对象,而不是“列表”

我不明白为什么会这样,因为该函数正在返回一个列表,并且我还在创建一个列表以获取详细信息。也许我没有正确编码

有人可以帮忙吗?

0 个答案:

没有答案