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 に答える