0

试图建立一个类,将一个数据库游标传回,我可以在各种功能中使用。下面的代码不起作用

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;')

我怎样才能改变我的代码来解决这个问题。

4

1 回答 1

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 语句的末尾省略 。

于 2013-06-26T11:36:35.233 回答