我写了一个Java应用程序来向Joomla网站添加文章
我正在使用JDBC连接并在Mysql数据库上运行查询
要创建文章,我需要在_contents
表(插入)上运行查询,在_assets
表(两个更新和一个插入)上运行3个查询。
应在_assets
表上执行的三个查询用于将项插入“嵌套列表树”;因此,如果其中一个查询失败,嵌套列表树将会中断
我的程序是从远程系统访问数据库(因此Internet连接问题或其他任何可能会中断查询)
如何确保所有三个查询相互运行而不会错过任何一个查询?
由于
答案 0 :(得分:2)
我认为交易是您正在寻找的。 p>
http://docs.oracle.com/javase/tutorial/jdbc/basics/transactions.html
答案 1 :(得分:1)
您还可以在结合4个查询的“存储过程”中使用Mysql-Transactions。 这样我认为更新成功的可能性更大(在数据库上,我认为您的Java方法可能会失败)。如果您计划使用其他程序/编程语言,您的更新处理将是相同的,您将不必再进一步关注。
但是,如果你只是使用一个Java程序,我会在Java端使用事务,因为对我来说Java比sql更容易(特别是如果你使用spring和一个持久性提供程序,例如hibernate({{3) },Spring Transactions))。