全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
1770 1
2018-10-05
以下代码中
报错
Connection' object has no attribute 'raw_connection'
不知道,怎么修改好呢。。。。。。------------------------------------------
import dataset
from pandas.io.sql import read_sql
from pandas.io.sql import to_sql
import statsmodels.api as sm

# 创建数据库连接
db = dataset.connect('sqlite:///:memory:')
# 创建books表
table = db["books"]
# 添加数据,在调用insert时会自动添加表模式
table.insert(dict(title="Numpy Beginner's guide", author='Ivan Idris'))
table.insert(dict(title="Numpy Cookbook", author='Ivan Idris'))
table.insert(dict(title="Learning Numpy", author='Ivan Idris'))
# 使用pandas的read_sql查询数据
print(read_sql('SELECT * FROM books', db.executable.raw_connection()))

# 加载数据
data_loader = sm.datasets.sunspots.load_pandas()
df = data_loader.data
to_sql(df, "sunspots", db.executable.raw_connection())
table = db['sunspots']

# 查询前5条数据
for row in table.find(_limit=5):
    print(row)
print("Table", db.tables)

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2020-8-8 19:01:53
应该有3种方法吧:
1.替换成query方法
result = db.query('SELECT * FROM books')
for row in result:
   print(row['title'], row['author'])
得到显示:
NumPy Beginner's Guide Ivan Idris
NumPy Cookbook Ivan Idris
Learning NumPy Ivan Idris

2.

改用print(read_sql('SELECT * FROM books', db.executable

.contextual_connect()

) )不报错,但会引发一个警告



3.使用print(read_sql('SELECT * FROM books', db.engine) )正常运行。


得到显示:


   id                   title      author
0   1  NumPy Beginner's Guide  Ivan Idris
1   2          NumPy Cookbook  Ivan Idris
2   3          Learning NumPy  Ivan Idris





二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群