gpt4 book ai didi

java - java客户端应用程序的ms access数据库的锁定机制用于多表更新

转载 作者:行者123 更新时间:2023-11-30 03:09:15 24 4
gpt4 key购买 nike

我有一个 MS Access 数据库,多个用户(3-4 个用户)通过 Intranet 上基于 Java 的客户端应用程序对其进行操作。我在数据库中有以下架构:

  1. tblCustomer:包含客户的帐户静态信息。字段是:

    a) 客户 IDb) CustomerIDRevisionNo (如果客户的某些静态信息发生变化
    发生)c) 客户其他静态信息字段。

  2. tblOrder:字段是a) 订单ID
    b) 客户 IDc) CustomerIDRevisionNo

  3. tblOrderData:包含特定 OrderID 的所有数据。

随着不同客户下订单,OrderID 的数字会连续增加。为了下订单,涉及以下步骤:A。如果某些客户信息发生更改,请修改 CustomerIDRevisionNo。b.读取 tblOrder 以查找当前最大 OrderID 并插入具有下一个 OrderID 的新行。C. 在 tblOrderData 中插入新 OrderID 的数据。

现在我应该如何从 Java 客户端应用程序为此进程设置锁定或事务隔离级别。需要注意的是,如果发生错误,则回滚应该恢复整个过程。

最佳答案

一如既往,请查看 documentation :

The way to allow two or more statements to be grouped into a transaction is to disable the auto-commit mode. This is demonstrated in the following code, where con is an active connection:

con.setAutoCommit(false);

然后执行下订单的步骤,完成后,调用 Connection 类的 commit 方法:

con.commit()

此外,您可能希望使用 try...catch 子句包装代码来捕获 SQLException 异常。这基本上就是确保出现问题时不会损坏数据库的方法。

附注
我假设您正在使用 JDBC 驱动程序。

关于java - java客户端应用程序的ms access数据库的锁定机制用于多表更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33974997/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com