gpt4 book ai didi

c# - 重复调用oracle存储过程

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

在 foreach 循环内一次又一次调用存储过程以将数据插入 Oracle 表中是一个好习惯吗?或者有其他方法可以做到这一点吗?

我有以下程序:

procedure proc1 (id     in  varchar2,
level in varchar2,
title in varchar2,
p_id in varchar2,
url in varchar2)

这是调用它的代码:

foreach (var c in xDoc.Descendants("cat"))
{
// call store procedure provide all values

foreach (var a in xDoc.Descendants("abc"))
{
// call store procedure provide values

foreach (var d in xDoc.Descendants("def"))
{
// call stored procedure provide values
}
}
}

有更好的方法吗?

最佳答案

我会亲自构建存储过程来为您提供您想要的表,以便您只需调用它一次。像这样多次调用该过程的效率非常低,因为数据库会多次生成结果集,并且会产生网络开销。如果您创建过程来返回所需的表,而不是表的零碎部分,则可以调用该过程一次并使用光标循环访问该表。

关于c# - 重复调用oracle存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8218948/

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