python - 将数据从 pandas 数据框导入 SQL Server 时忽略错误的最佳方法是什么?
问题描述
我正在编写一个 python 脚本来每天从遗留系统的数据转储中导入数据。我想导入数据并跳过引发错误的行(例如错误的数据类型)。实现这一目标的最佳方法是什么?
我当前的代码:
engine = sqlalchemy.create_engine("mssql+pyodbc:///?odbc_connect=%s" % params)
conn = engine.connect()
df = pd.read_csv(file_path)
df.to_sql(tbl_name,conn,if_exists="append",index=False)
该文件相当大,因此我不希望像在某些示例中看到的那样遍历行。
解决方案
默认情况下不应该df.to_sql
忽略那些吗?我认为这就是它的工作原理。如果没有,只需设置一个 try catch 例程。
try:
engine = sqlalchemy.create_engine("mssql+pyodbc:///?odbc_connect=%s" % params)
conn = engine.connect()
df = pd.read_csv(file_path)
df.to_sql(tbl_name,conn,if_exists="append",index=False)
catch:
print('en erro was detected; please check...')
推荐阅读
- kubernetes - 在数据库中存储 Kubernetes CronJob 日志
- python-3.x - 在实现类时对使用 Python Enum 感到困惑
- selenium-webdriver - 我无法在代码上创建点击事件,我需要为它找到元素
- javascript - 一个接一个发送多个 API 调用时失去互联网连接
- c++ - Boost状态图`状态上下文`为空
- android - 连贯地使用多项活动
- linux - bash脚本在启动时自动运行,制作屏幕,执行命令并分离
- mongodb - mongodb 将生成的文件保存在 .snapshot 文件夹下
- javascript - laravel ajax返回405
- android - 通知仅弹出几次然后停止。定期运行后台服务