query_view.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:Postgres-GUI 作者: atlast 项目源码 文件源码
def run_query(self, query):
        try:
            for column in self.query_tree.get_columns():
                self.query_tree.remove_column(column)

            cursor = self.conn.cursor()
            cursor.execute(query)
            self.conn.commit()

            self.query_info.set_text(cursor.statusmessage)

            if not cursor.description:
                return

            columns = []
            # TODO get rid of manual incrementing
            i = 0
            for description in cursor.description:
                renderer = Gtk.CellRendererText()
                column = Gtk.TreeViewColumn(description.name.replace('_', '__'), renderer, text=i)
                column.set_resizable(True)
                i += 1
                self.query_tree.append_column(column)
                columns.append(str)

            store = Gtk.ListStore(*columns)

            for row in cursor.fetchall():
                store.append([str(i) for i in row])

            self.query_tree.set_model(store)

        except DatabaseError as e:
            Alert(e.message, self.query_tree.get_toplevel())
            self.conn.rollback()

        self.query_tree.show_all()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号