Как распечатать данные из базы данных sqlite3? - PullRequest
0 голосов
/ 26 февраля 2019
import sqlite3

def function():
with sqlite3.connect("test.db")as db:
    c = db.cursor()

index = 1
while index == 1:

    c.execute("CREATE TABLE IF NOT EXISTS data(name,age);")
    insert = "INSERT INTO data(name,age) VALUES ('JOHN',16)"
    c.execute(insert)
    db.commit()
    index += 1
    display()

def display():
with sqlite3.connect("test.db")as db:
    c = db.cursor()

c.execute("CREATE VIEW IF NOT EXISTS test_VIEW AS SELECT name, age FROM data")
db.commit()
c.execute("SELECT * FROM test_VIEW")

function = function()
output = display()

Ссылка на Представления SQLite .Я пытаюсь распечатать все мои данные из базы данных.Но из приведенного выше примера кода я получаю только пустой вывод.Как мне быть?

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

вам нужно перебрать результаты.Смотрите полный макет ниже.Я изменил его, чтобы он мог хорошо распечатываться, используя pandas dataframe.:

import sqlite3
import pandas as pd

def function():
    with sqlite3.connect("test.db")as db:
        c = db.cursor()
        index = 1
        while index == 1:

            c.execute("CREATE TABLE IF NOT EXISTS data(name,age);")
            insert = "INSERT INTO data(name,age) VALUES ('JOHN',16)"
            c.execute(insert)
            db.commit()
            index += 1
            display()

def display():
    with sqlite3.connect("test.db")as db:
        c = db.cursor()
        c.execute("CREATE VIEW IF NOT EXISTS test_VIEW AS SELECT name, age FROM data")
        db.commit()  
        data_pd = pd.read_sql('SELECT * FROM test_VIEW',db)
        print data_pd


function = function()
output = display()

результат ниже:

   name  age
0  JOHN   16
0 голосов
/ 26 февраля 2019

вам придется использовать fetchall() метод

В функции дисплея выполните

query = c.execute("SELECT * FROM test_VIEW")
data = c.fetchall()
for d in data:
    print (d)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...