问题标签 [pandas-to-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3972 浏览

python - Python 使用 SQLAlchemy 连接到 AWS Aurora Serverless MySQL

有没有办法指定我与 SQLAlchemy 的连接到没有 Secrets Manager ARN 的 AWS RDS Aurora Serverless MySQL 数据库实例?我有数据库用户名、密码、端点、ARN 等,理想情况下我会初始化一个引擎,然后用来df.to_sql()将 DataFrame 加载到 Aurora 实例上的表中。

0 投票
1 回答
306 浏览

python - 将 Pandas 数据框导入 SQL Server 时出现接口错误

我有一个名为:数据的熊猫数据框,我正在尝试将这个熊猫数据框读入 sql server 中的表中。我能够从 sql 将数据读入 python,但我正在解决将数据帧加载到表中的问题。

我已经尝试了一些示例,但仍然遇到相同的错误: DatabaseError: Execution failed on sql 'SELECT name FROM sqlite_master WHERE type='table' AND name=?;': ('42S02', "[42S02] [Microsoft] [ODBC SQL Server 驱动程序][SQL Server]无效的对象名称 'sqlite_master'。(208) (SQLExecDirectW); [42S02] [Microsoft][ODBC SQL Server Driver][SQL Server]无法准备语句。( 8180)")

目前我有以下代码:

我是 pyodbc 的新手,并且将 python 与 sql server 一起使用,我不太确定出了什么问题,更不用说修复它了。

可以请人帮助我,或指出我正确的方向

0 投票
0 回答
3010 浏览

python - 使用 to_sql() 时参数“fast_executemany”无效

我正在尝试通过使用 fast_executemany 来加速 to_sql()。但我得到一个错误,

类型错误:使用配置 PGDialect_psycopg2/QueuePool/Engine 将无效参数“fast_executemany”发送到 create_engine()。请检查关键字参数是否适合这种组件组合。

我一直在参考上一个问题,Speeding up pandas.DataFrame.to_sql with fast_executemany of pyODBC

如果我删除 fast_executemany 参数,此代码将执行,但需要很长时间。我正在使用 Python 3.7。

0 投票
0 回答
135 浏览

python - 如何使用 MySQL Connector/Python + SQLAlchemy 创建本地数据库连接

我正在尝试DataBase使用 SQLAlchemy 和 MySQL 连接器/Python 在本地创建一个....因为我有大量数据要使用....

这是我的连接看起来像....

因为我正在使用phpMyAdmin所以xampp我尝试将我的数据导入到Data-Base但它失败了,因为我推送的数据的大小太大了......

因此,如果有人可以向我发送文档或教程,简要说明如何创建此连接,我将感到很高兴...

我很抱歉,如果有任何事情不够清楚..

请注意,我使用pandas+to_sql将数据从 excel 推送到数据库,因为我有多个表,因为每个表都有超过 5000 行和超过 100 列.....

我发现的这个错误看起来像

这是我的完整代码

0 投票
0 回答
311 浏览

python-3.x - Pandas to_sql 给出 ORA-03106: 致命的两任务通信协议错误

我尝试使用 to_sql 方法将 pandas 数据帧写入 Oracle,有时会成功写入,有时会给出相同数据帧的“(cx_Oracle.DatabaseError)ORA-03106:致命的两任务通信协议错误”。

我检查了 ORA-03106 的大多数 oracle 错误,但不明白为什么它有时会起作用,而再次尝试却不起作用。

0 投票
3 回答
4593 浏览

python - sqlalchemy.exc.ProgrammingError: (pyodbc.ProgrammingError) ('42S22', "[42S22] [Microsoft].....SQL Server]无效的列名'0'

我正在尝试使用 to_sql() 函数更新现有的 SQL 数据库.....

当我尝试运行代码时,我发现此错误

这是我的代码:

数据库部分:

请注意,Excel 文件和数据库 sql 之间的 Columns 名称存在差异......不同之处在于 SQL 数据库中没有空格,而 Excel 文件中有空格

0 投票
0 回答
271 浏览

python - 如果域有括号 [ ],pandas to_sql 无法替换表

我正在将一个表保存到 SQL 服务器中,并需要它来替换现有的同名表。

工作,但在架构中添加括号会破坏它:

出现此错误:

任何人都知道为什么在模式中添加括号会导致熊猫无法自动为我删除表格?谢谢-

我在用着

0 投票
1 回答
133 浏览

python-3.x - Pandas to_sql 正在舍入日期时间列

我正在将数据框中的所有记录上传到 SQL Server 表,但 to_sql 似乎是舍入日期时间值。IE:

两个日期都设置为 datetime64[ns]。然后,我调用以下方法:

dtypes 的内容如下:

当我查看 SQL Server 中的更新数据时,我得到以下 updated_date:

并且正确的 updated_date 是(261 而不是 260):

任何想法为什么会发生这种情况?

感谢大家!

0 投票
1 回答
1551 浏览

python - psycopg2.ProgrammingError: 不完整的占位符: '%(' without ')'

我有几个不同的函数可以用 pandas 抓取不同的表,将每个表保存到数据框,然后将它们保存到 PostgreSQL 数据库。我能够成功地抓取每个表并将其保存为数据框,但是在将其保存到 SQL 时遇到了一些问题。我正在尝试使用以下内容来做到这一点:

我能够成功保存df1到 SQL,但运行时出现错误df2这两个函数之间唯一真正的区别是它们从不同来源抓取数据。其他一切基本相同。

对于其他数据帧,我还有几个其他函数,但无论我调用函数的顺序如何,只有第一个函数有效。

对于我调用的所有其他函数,我不断收到相同的错误:

他们还链接了一个关于错误的背景页面:http: //sqlalche.me/e/f405),尽管我仍然不太清楚该怎么做。

当唯一改变的是我正在从中抓取的 url 时,我只是觉得它对于一个功能而不是其他功能的工作方式很奇怪。

编辑

我正在从 NFL 的网站上抓取数据。

df1在http://www.nfl.com/stats/categorystats?archive=false&conference=null&role=TM&offensiveStatisticCategory=GAME_STATS&defensiveStatisticCategory=null&season=2019&seasonType=REG&tabSeq=2&qualified=false&Submit=Go的表中遍历年份。

df2做了非常相似的事情,但从http://www.nfl.com/stats/categorystats?archive=false&conference=null&role=TM&offensiveStatisticCategory=TEAM_PASSING&defensiveStatisticCategory=null&season=2019&seasonType=REG&tabSeq=2&qualified=false&Submit=Go中提取数据。

看起来主要的区别是df1用于Pct表示列标题中的百分比,而df2使用%

0 投票
0 回答
126 浏览

python - 在 Django (Wagtail) 中使用外键关系填充数据库

每天一次,我需要从 2 个表中删除所有数据并上传新数据。“产品”表一切顺利,但我无法填充“价目表”表,因为表上有外键关系。

模型.py:

应用程序.py ...

我得到的错误:

如果我用 if_exists='replace' 替换if_exists = 'append'则上传数据但表设置(包括所有关系)被清除。

任何帮助将非常感激!