首页 > 解决方案 > DatabaseError:sql执行失败:没有这样的表:League

问题描述

我正在尝试使用 python 连接到 sqllite3 数据库。错误是:

DatabaseError: Execution failed on sql 'SELECT * FROM League': 
no such table: League

Python代码:

import sqlite3
import os.path
import pandas as pd
import numpy as np
from matplotlib import pyplot as plt
from sklearn.cluster import KMeans
from sklearn.preprocessing import scale

#BASE_DIR = os.path.dirname(os.path.abspath(pat))
#database = os.path.join(BASE_DIR, "database.sqlite")

#with sqlite3.connect(database) as conn:
#    
#    print("Connection Successful",conn)
#    df = pd.read_sql_query("SELECT * FROM Country", conn)

pat = r'C:\Users\pouru\Downloads\soccer'
database = pat + 'database.sqlite'
conn = sqlite3.connect(database)
print("Connection Successful",conn)
df = pd.read_sql_query('SELECT * FROM League', conn)

它说连接成功,但是当我插入最后一条语句以获取表数据时,它会产生上述错误。我尝试使用绝对路径方式解决它,就像我上面评论的代码一样,但它给出了相同的错误。

谁能给我一个解决这个问题的想法?我试过所有的桌子。它在 SQL 接口上运行良好,但在 python 中不行。

标签: pythonpandassqlite

解决方案


将 pat = r'C:\Users\pouru\Downloads\soccer' 更改为

pat = 'C:\Users\pouru\Downloads\soccer\'

推荐阅读