gpt4 book ai didi

java - 使用从数据库事件返回的 RowId 更新数据库中的另一个表

转载 作者:搜寻专家 更新时间:2023-11-01 03:51:06 24 4
gpt4 key购买 nike

通过监听器处理作为数据库事件的一部分返回的 RowID:

class DCNDemoListener implements DatabaseChangeListener
{
DBChangeNotification demo;
DCNDemoListener(DBChangeNotification dem)
{
demo = dem;
}
public void onDatabaseChangeNotification(DatabaseChangeEvent e)
{
System.out.println(e.toString());
}
}

例如:以下是 DML 操作从数据库返回的值

ROW: operation=UPDATE, ROWID=AAASjgAABAAAVapAAA

使用上面的 ROWID,我想更新/插入数据库中的另一个表。我该怎么做呢?我是否首先将 RowId 存储在缓存中,或者是否有任何其他方式使用查询插入/更新

最佳答案

使用 SQL 插入到另一个表中:

Insert into table2 (column1,column2,....) (select column1,column2,.... from table1 where rowid = retrived_rowid);

如果您想使用 C# 使用第一个表中的 rowid 将数据插入到第二个表中,您必须以某种方式将数据保存在您的应用程序中,然后读取您的数组/列表并将数据插入另一个表中的一个元组一次。 ODP.net 中有一种方法可以以批处理方式向表中插入多行。

您只能使用检索到的 rowid 更新您的原始表,因为 rowid 是物理行标识符并且它对于数据库中的每个元组都是唯一的。

关于java - 使用从数据库事件返回的 RowId 更新数据库中的另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27769284/

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