def saveToSql():
poroducts = pd.read_csv('./data.csv')
df = pd.DataFrame(products)
conn = create_engine('mysql+pymysql://root:123456@localhost:3306/bigdatas?charset=utf8')
df.to_sql('products',con=conn,index=False,if_exists='append')
print('导入数据库成功‘)
Python执行完后输出导入数据成功,csv文件中的数据也没了,但是Navicat打开后数据库中没有数据,数据库配置都是正确的
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注 引自免费微信小程序:皆我百晓生
要解决这个问题,首先确保在
create_engine()
函数中设置正确的MySQL连接信息,包括用户名、密码、主机名和数据库名称。接下来,在保存数据到SQL时,检查
df
是否已正确写入数据库。如果存在错误,可能是因为数据写入过程中遇到了问题。另外,如果你在尝试从数据库读取数据时遇到问题,你需要确保
create_engine()
函数已经设置了正确的连接参数,并且有足够的权限访问数据库。此外,确保
saveToSql()
函数中包含对异常处理,以便在数据写入失败时可以捕获并处理错误。以下是修改后的代码示例:
import pandas as pd # 创建一个DataFrame df = pd.DataFrame({'column1': [1], 'column2': ['value']}) try: # 使用创建的引擎将DataFrame写入数据库 conn = create_engine('mysql+pymysql://username:password@host/database?charset=utf8') df.to_sql(name='table_name', con=conn, if_exists='replace', index=False) except Exception as e: print(f"发生错误:{e}")
这个例子展示了如何使用
pandas
库加载数据并将其写入数据库。然后,它通过尝试创建一个名为table_name
的新表并替换现有表,从而覆盖原有的数据。如果在写入过程中出现问题,将会打印出错误消息。try: # 使用创建的引擎将DataFrame写入数据库 conn = create_engine('mysql+pymysql://username:password@host/database?charset=utf8') df.to_sql(name='table_name', con=conn, if_exists='replace', index=False) except Exception as e: print(f"发生错误:{e}")
在这个示例中,我们尝试使用
to_sql
方法将数据写入数据库。如果在写入过程中出现任何错误,我们将捕获这些错误并将它们打印出来。这样可以帮助我们更好地了解问题的原因,并采取适当的措施来解决它。解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 35114 SVAC视频验签的问题
- ¥15 impedancepy
- ¥15 在虚拟机环境下完成以下,要求截图!
- ¥15 求往届大挑得奖作品(ppt…)
- ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
- ¥50 浦育平台scratch图形化编程
- ¥20 求这个的原理图 只要原理图
- ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
- ¥20 微信的店铺小程序如何修改背景图
- ¥15 UE5.1局部变量对蓝图不可见