pandas with Sqlite3 no show the data in python

bihw5rsg  于 2023-10-23  发布在  SQLite
关注(0)|答案(2)|浏览(244)

先生,这是我的代码,没有错误,但没有显示结果,没有数据,我使用python3与Pondas与sqlite3我的数据库名称是测试,我的表名称是test1
请指导我Pandas如何显示数据
谢谢你在提前方面的
python3 with pandas with sqlite3
查看我的代码

  1. import sqlite3
  2. import pandas as pd
  3. import datetime
  4. con = sqlite3.connect('C:/Program Files/sqlite/muhammad.db')
  5. data = pd.read_sql_query('Select * from muhammad1;', con)
  6. data.head()
zqry0prt

zqry0prt1#

首先,我认为你的sqlite文件位于Windows机器中,而且路径中的分隔符似乎是错误的。它应该是\,而不是像Linux和Mac OS中那样的/
其次,如果数据库文件名是test,则它应该包含在sqlite路径中,而且,如果表名是test1,则选择查询应该是SELECT * FROM test1
试着确定路径是否正确,

  1. import os
  2. path = 'C:/Program Files/sqlite/muhammad.db'
  3. if os.path.exists(path):
  4. data = pd.read_sql_query(...)
  5. else:
  6. print('file does not exist')

然后验证查询。

附加建议

尝试以下代码

  1. from sqlalchemy import create_engine
  2. path = 'C:/Program Files/sqlite/muhammad.db'
  3. engine = create_engine(f"sqlite:///{path}")
  4. with engine.connect() as conn, conn.begin():
  5. data = pd.read_sql_table("muhammad1", conn)

the documentation中所述

展开查看全部
gopyfrb3

gopyfrb32#

首先写一些东西到你的数据库,然后查询它。我的表名是 data。我将名为 * NewDatabase.db * 的数据库写入与python脚本相同的目录。这在你的机器上工作吗?

  1. import sqlite3
  2. import pandas as pd
  3. con = sqlite3.connect('NewDatabase.db')
  4. data = {"column_name" : ["a", "b", "c"], "column_name1" : ["1", "2", "3"] }
  5. df = pd.DataFrame(data)
  6. print("DataFrame",df)
  7. # Writen to sqlite for query
  8. df.to_sql(name='data', con=con, if_exists='fail')
  9. # Read from sqlite
  10. sql_data = pd.read_sql_query('Select * from data;', con)
  11. sql_data.head()
  12. print("Database", sql_data.head())
展开查看全部

相关问题