我正在使用Python和MySQLdb向数据库中添加行。似乎当我的脚本退出时,行会被删除。在脚本退出之前,我的最后一行在表上执行“select*”,这显示了我的一行。当我重新运行脚本时,第一行(在打开连接之后)执行相同的“select*”并返回零结果。我在这里真的是不知所措。我已经在这方面工作了大约2个小时,不能理解什么可以访问我的数据库。
此外,在运行脚本之间,我从终端手动运行“select*”,结果为零。
如果我手动从终端添加一行,它似乎会持续。
要插入行的查询:
cursor.execute("INSERT INTO sessions(username, id, ip) VALUES (%s, %s, %s)", (username, SessionID, IP]))
我用来检查数据的查询:
cursor.execute("select * from sessions")
print cursor.fetchall()
这将显示程序退出之前的行,然后在程序再次运行时不显示任何内容。
事先谢谢你的帮助。
检查另一个问题:Python MySQLdb更新查询失败
您可以找到一些关于如何提交、如何使用autocommit进行连接等的示例。
看来您需要在执行查询后connection.commit()
更改(将connection
替换为DB connection变量)。
http://docs.python.org/library/sqlite3.html
connection.commit():此方法提交当前事务。如果不调用此方法,则自上次调用commit()以来所做的任何操作都无法从其他数据库连接中看到。如果您想知道为什么没有看到已写入数据库的数据,请检查您没有忘记调用此方法。
问题内容: 我制作了一个命令行应用程序,在其中压缩文件夹并在本地服务器上共享供他人下载。我想做的是关闭服务器后立即删除压缩文件夹的副本。这是我的代码: 当我按下ctrl- c时,程序退出并且main函数关闭,结果,是否应该执行os.Remove(xyz)?去的游览说,推迟执行该表达式时,函数返回。在这里,我不觉得main有机会退还任何东西。 有什么解决方法可以实现我要完成的任务?我脑子里有一些解决
问题内容: 有什么方法可以使用SQL命令删除文件? 我在文件系统中有图像文件,并在DB中链接到它们。例如: 删除类别\产品后,删除属于已删除类别\产品的图像的链接。(因为’ON DELETE CASCADE’) 但是我也需要删除文件本身。就像是: 当然可以创建必须删除的所有文件的表。我问是否有任何实时方法。 谢谢 问题答案: 您不能在MySQL内部执行此操作。它可以影响文件的唯一操作是在查询中创建
问题内容: 我有两个线程:主线程和从主线程生成的线程。 当主线程退出时,整个程序会终止吗? 问题答案: 没有。 当所有非守护程序线程完成时,Java程序终止。 该文档指出: Java虚拟机启动时,通常只有一个非守护程序线程(通常调用某些指定类的名为main的方法)。Java虚拟机将继续执行线程,直到发生以下任何一种情况: 类的方法已被调用,安全管理器已允许进行退出操作。 不是守护程序线程的所有线程
23.9 程序退出 每个SpringApplication都会向JVM注册一个关闭钩子,以确保在退出时ApplicationContext被正常关闭。所有标准的Spring的生命周期回调(如DisposableBean接口或@PreDestroy注解)都可以使用。 另外,如果希望bean在SpringApplication.exit()被调用时返回特定的退出码,那么bean可以实现org.spri
问题内容: 我在UI Bootstrap中使用Angular 。我创建了自定义指令,该指令将广播的最差消息推送到绑定到视图的警报数组中(呈现为Bootstrap警报)。在一定的超时后,警报将从阵列(因此也从视图)中删除。这是代码: 我想知道是否可以在删除警报之前向警报添加淡出(或其他动画)?任何帮助和提示,将不胜感激! 问题答案: 在Angular中> 1.1.5 您可以使用angular的内置动
问题内容: 是否可以编写一个在终止程序时System.exit将调用的方法? 问题答案: 使用。