问题标签 [pymysql]

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 投票
3 回答
11602 浏览

python - 为 Anaconda python 安装 PyMySQL

我已经安装了两个版本的python。

Python 2.7.2(默认,2011 年 6 月 12 日,15:08:59)[MSC v.1500 32 位(英特尔)] 在 win32 上

Python 2.7.7 |Anaconda 2.0.1(64 位)| (默认,2014 年 6 月 11 日,10:40:02)[MSC v.1 500 64 位 (AMD64)] 在 win32 上

我正在尝试为 anaconda python 包安装 PyMySQL,问题是当我尝试安装它时,它安装在 Python 2.7.2 中。我怎样才能成功安装 anaconda 版本的库。我尝试使用 anaconda 命令

但没有用,也试过了

这就是发生的事情

在 anaconda 目录中,但它也不起作用。我还能尝试什么?在这种情况下,我可以在 anaconda 中使用什么库来访问 mysql 数据服务器是不可能的?

0 投票
2 回答
1542 浏览

python - 什么时候会抛出 MySQL 主键错误?

如果我有一个批量插入语句,例如:

并且x2违反了主键,错误是在处理之前还是之后抛出的x3

具体来说,我在使用 Python 和 PyMySQL 的 try-catch 块中有一堆批量插入,例如:

我想确保如果批量插入中的一个元组失败,从而打印错误,同一批次中的其余元组仍然被处理。

我的动机是我在两台服务器之间传输大量数据。在服务器 1 中,数据存储在日志文件中,并且正在插入到服务器 2 上的 MySQL 中。一些数据已经在服务器 2 上的 MySQL 中,因此有很多故障。但是,如果我不使用批量插入,并且我INSERT INTO对每条(数百万条)记录都有一个单独的记录,那么事情的运行速度似乎要慢得多。所以无论哪种方式我都遇到了麻烦:使用批量插入,重复失败会破坏整个语句,并且没有批量插入,该过程需要更长的时间。

0 投票
2 回答
709 浏览

python - 将行从表复制到另一个表时出错

我正在编写一段python代码来将一个表从一个mysql db复制到另一个mysql db。

我遇到了一些问题,比如首先它读取 null、空值作为“无”,我必须将其转换为“NULL”。

现在它显示以下错误 -

当我打印该行时,我可以看到 datetime.datetime(2014, 8, 25, 8, 24, 51) 的条目。我尝试通过用 datetime.time ( http://pymotw.com/2/datetime/ ) 替换 datetime.datetime 来解决这个问题,但这也失败了。

我的代码如下:

回溯和输出行:

有人可以帮助消除此错误...或建议任何其他更好的方法来将表从一个数据库复制到 python 中的另一个数据库。

0 投票
2 回答
437 浏览

python - PyMySql 以 Camel Case 形式安装,但以小写形式导入?

请你们中的一位 Pythonistas 解释为什么PyMySql安装在 Camel Case 中,但以小写形式导入?

0 投票
1 回答
312 浏览

mysql - 使用 pymysql 所做的更改不会“持续”到数据库

我正在尝试使用 pymysql 插入 mysql 数据库。在插入和调用提交之后,作为演示,我选择并打印所有行。打印新行,但是 - 仅显示(打印)最后添加的行,并且 auto_incremented Id 字段递增,但无论我运行代码多少次,都只显示一行。在 mysql 命令行选择或 Sequel Pro“内容”选项卡中没有可见行。我相信我已经审查了所有相关的“类似问题”

谢谢。

打印结果(运行代码 9 次后):

0 投票
1 回答
89 浏览

python - 为 Python 2.5.1 或更低版本安装 pymysql

似乎我无法通过搜索谷歌找到适用于 python 2.5.1 的 PyMySQL。有没有人有外部链接。

我在哪里下载/安装 Python 2.5.1 或更低版本的 PyMySQL?

如果不可能,我如何在 python 2.5.1 中使用 MySQL?

规格:Windows 8:Python 2.5.1

0 投票
4 回答
31299 浏览

python - 如何在 Python 中使用 mysqldump 和 mysql 复制数据库?

我正在编写一个简单的 Python 脚本来复制 MySQL 数据库。我正在尝试根据以下 SO 问题及其答案复制数据库:“复制/复制数据库而不使用 mysqldump ”、“ python 子进程和 mysqldump ”和“ Python 子进程、mysqldump 和管道”。但是,由于某些原因,我的脚本无法正常工作,因为表格和数据没有出现在我的新数据库中。

我可以从我的输出中看到 mysqldump 工作正常(我在输出中看到“Dump completed on...”),所以我认为我的管道有问题

这是我的脚本:

如您所见,我从这个答案中获取了复制数据库管道。起初我和其他问题mysqldump: Couldn't find table: "|"一样遇到了错误。所以现在我按照建议使用两个调用,这解决了该错误消息。subprocess.Popen

输出变量显示执行了 mysqldump,但我没有看到关于 mysql 命令的任何内容。

我曾尝试使用p2.wait()andp1.wait()而不是p2.communicate() 一个答案中的建议,但这只会使我的 Python 脚本变得无响应。

我还尝试了以下方法:

但是 output1 和 output2 都显示了相同的 mysqldump 输出。所以我猜这只是一件愚蠢的事情。

我也尝试过使用subprocess.call而不是subprocess.Popen,但这也使我的脚本变得无响应。

还包括其中shell=True一个Popencall还导致脚本只是无响应。

但是,在命令提示符(我使用 Windows 8.1)中键入命令确实有效,如下所示:

mysqldump -h localhost -P 3306 -u root -p mydb | mysql -h localhost -P 3306 -u root -p mydb2

它在不到三秒的时间内复制了我的小型测试数据库。

我希望我也可以让它在 Python 中工作。

0 投票
1 回答
1195 浏览

python - 来自 Python 的缓慢 MySQL 插入

我正在尝试使用 python(pymysql 连接器)将一些数据插入 MySQL 数据库,但性能非常差(每秒插入大约 10 行)。该表是 InnoDB,我正在使用多值插入语句并确保关闭自动提交。任何想法为什么我的插入仍然这么慢?

我最初认为自动提交没有被正确禁用,但我添加了代码来测试它在每次连接期间被禁用(=0)。

这是我的示例代码:

还有什么问题?上面的例子需要大约 110 秒的时间来执行。

0 投票
1 回答
1296 浏览

python - 如何在 Python 中从 MySQL 查询结果中附加“十进制”

我正在使用以下代码在 Python 中运行 MySql 查询:

我得到类似的结果

我需要删除值前面的“十进制”字符串。

我尝试使用过去示例中的以下内容

但它给了我这个

理想情况下,我想重新排列输出的顺序并得到类似的东西

0 投票
0 回答
181 浏览

mysql - 学习 PyMySQL、Python - 元组错误

我正在学习 SQL 并尝试构建一个脚本,该脚本将使用一些基本的公司信息更新数据库。

下面是我得到的查询,我得到了

询问:

错误:

指数:

问题:

  • 有没有更优雅的方式来构建这个查询?
  • 是否可以放在query多条线上?最好的方法是什么?
  • 我知道该索引上升到 11 个值,所以一切都应该在范围内,可能是因为某些值是“”吗?IE['Google','google.com','','','','','','','','','','']
  • 渴望获得有关如何更好地构造此类函数的提示