我有一个数据库类,我正在尝试从表中提取所有数据。当我运行函数“ db_source”时,没有对象生成。该类中的其他查询都可以工作,因此它特别是返回对象的问题。这是我的代码:
import psycopg2 as psy
class Database:
def __init__(self):
self.con = psy.connect(user='postgres',
password='xxxx',
database='xxxx',
host='localhost')
self.cur = self.con.cursor()
def execute_query(self, query, args, multiple=False, return_object=False):
if not multiple and not return_object:
self.cur.execute(query, args)
if multiple:
self.cur.executemany(query, args)
if return_object:
self.cur.execute(query, args)
query_object = self.cur.fetchall()
return query_object
def db_source(self):
self.execute_query(""" SELECT column1, column2::text, column3 FROM table1 """,
None, multiple=False, return_object=True)
db = Database()
data = db.db_source()
我已经将我的头发拉了一个小时,所以我们将不胜感激。
答案 0 :(得分:1)
该方法必须返回对象:
def db_source(self):
return self.execute_query(""" SELECT column1, column2::text, column3 FROM table1 """,
None, multiple=False, return_object=True)