gpt4 book ai didi

oracle - 使用 %ROWTYPE 复制和修改 Oracle 记录

转载 作者:行者123 更新时间:2023-12-02 11:38:02 25 4
gpt4 key购买 nike

我现在没有权限来测试这个,但是下面是——或者类似的东西,因为我的即兴代码可能并不完美! -- 在 Oracle 中可能:

declare
myRecord myTable%ROWTYPE;
begin
select * into myRecord from myTable where key = 123;
myRecord.key := 456;
myRecord.value := myRecord.value + 50;
insert into myTable select * from table(myRecord);
end;

即,我们将键为 123 的记录从 myTable(可能有 100 个字段)复制到具有相同模式的变量中,然后更新一些复制的记录的字段(例如,这里是一个新的字段)键和更新的),然后将其插入回原始表:有效地,在必要时通过一些修改复制原始记录?

我知道还有其他方法可以做到这一点,但是与我所见过的其他方法相比,这看起来相当简洁......当然,如果它能起作用的话!

最佳答案

INSERT INTO myTable VALUES myRecord;

此网站上有一些很好的示例:http://psoug.org/reference/insert.html 我想您不想做这样的事情,因为您有很多列?

INSERT INTO myTable
SELECT 456, value+50, colx, coly
FROM myTable
WHERE key = 123;

关于oracle - 使用 %ROWTYPE 复制和修改 Oracle 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9611172/

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