我正在编写的应用程序有问题。 用户使用文件对话框选择一个文件,其值将添加到数据库中,或者至少是这样的。 使用 mysqldb 模块,我在应用程序开始时建立了所有常用连接:
db = MySQLdb.connect(host, user, passwd, database)
cursor = db.cursor()
然后运行如下代码:
cursor.execute("INSERT INTO info (key1, code, note) VALUES ('testkey1', 'testcode1', 'testnote1;")
db.commit()
有趣的是,如果我在 Linux (Ubuntu 13.10) 上运行它,它可以完美运行,没有错误或问题。 然而,当我在 Windows 上运行它(在 XP 和 7 上测试)时,它根本不提交。而且我没有收到错误信号来表明存在问题。 直到我检查数据库才发现什么也没发生。
有谁知道为什么我可能会遇到此兼容性问题?
补充一下:Windows 上的数据库是 Linux 上数据库的精确副本。
最佳答案
现在已经解决了,这是一个非常愚蠢的错误,但是如果有任何从未使用过 Windows 的 Linux 用户确实遇到了这个问题,这里是解决方案。
首先确保 Xampp 安装在 Windows 计算机上。 确保端口打开并通过 Xampp 应用程序安装 MySQL 和 Apache。 之后,打开 PhpMyAdmin 并确保数据库服务器的用户权限与 python 应用程序中输入的权限相匹配。 此后,应用程序将像在 Linux 上一样运行。
我认为将 MySQL 与 MySQL Workbench 一起安装是正确的举措,但事实证明它使用了 Apache 的版本。
感谢所有提供帮助的人。
关于Python:MySQLdb 在 Linux 上运行良好,而不是在 Windows 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21427394/