尝试设置一个将数据库光标传递回来的类,我可以在各种函数中使用它。以下代码不起作用
class create_db(object):
def __init__(self):
import psycopg2 as pq
self.cn = pq.connect('dbname=mydb user=me')
self.cr = self.cn.cursor()
我希望能够做的是
cur = create_db()
cur.execute('SELECT * FROM table1;')
如何更改代码以解决此问题。
答案 0 :(得分:1)
根据你想做的事情
class create_db(object):
def __init__(self):
import psycopg2 as pq
self.cn = pq.connect('dbname=mydb user=me')
self.cr = self.cn.cursor()
def execute(self, query, *args):
results = self.cr.execute(query, args)
return results
现在您可以运行类似
的内容cur.execute('SELECT * FROM table1 WHERE column = ?;', (42,))
我不记得我的头脑,但我想你会想要在SQL语句的末尾省略;
。