问题标签 [execute-immediate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - 获取 ORA-01747:使用动态插入插入数据时,Oracle 中的 user.table.column、table.column 或列规范无效
这是代码。
上述两个参数都将在过程调用期间传入。
我的存储过程如下:
输入参数是 p_id(这是一个数值),p_mc 实际上是一个列名。样本数据是 p_id = 6372325,p_mc 可以是 MC1、MC2 到 MC14。
oracle - 您可以从立即执行语句中退出 PL-SQL 循环吗?
我有以下片段(简化以排除无关的细节):
当我运行它时,它失败并出现PLS-00201: identifier 'CURSOR_LOOP' must be declared
错误。
如果我将循环标签留在立即执行之外,我会得到PLS-00376: illegal EXIT/CONTINUE statement; it must appear inside a loop
.
显然后者是错误的,但尚不清楚为什么前者是错误的。
可以从立即执行中的语句中退出此循环吗?
oracle - 如何在 Oracle 中存储和填充 Execute Immediate 返回的数据?
在我的项目中,我正在尝试执行以下查询:
查询导致数据类型不一致的错误,除了这个错误之外,问题是我们可以像在 MS-SQL 中一样将结果存储到临时表中吗?我是 Oracle 数据库的新手。我需要临时表来存储 1 到 20 之间的记录,我将使用 Row_Number() 并在我的项目中相应地修改查询。
stored-procedures - 立即执行“创建或替换视图”给出 00900。00000 - “无效 SQL 语句”错误
我一直被这个错误困扰。您能否提出以下代码中的错误?这是写在一个接受变量输入的过程中。谢谢。
更新:以下是我看到的错误。
sql - 提示用户在 oracle 中输入
如何使用 SQLTools v1.6 提示用户在 oracle 中输入?我尝试了以下 PL/SQL 块:
它在编译时提示用户输入。但是,该值不能在 select 语句中使用。有没有其他方法可以实现我所寻求的。
该表包含 852269 条记录,其中单个 memID 具有多行(我在这里提供了几行):
oracle - 如何处理包含需要执行的 SQL 语句字符串的表列?
我需要构建一个 PL/SQL 过程,该过程从源表中获取数据并将其插入到目标表中。源表具有一ITEM1
列、一ITEM2
列和一SRC_CODE
列。该SRC_CODE
列包含一个作为 SQL 选择语句的字符串,即SELECT KEY FROM SOMETABLE WHERE DAY = V_DAY
. 因此,我需要以某种方式执行列中的语句并在 select 语句中SRC_CODE
填充该变量。V_DAY
结果KEY
值以及ITEM1
源ITEM2
表中的值将进入TARGET
表中。
从逻辑上接近这个过程,我认为我需要从源表中取出一行,执行SRC_CODE
到一个集合中,然后KEY
从集合中取出每个并将其绑定到ITEM1
andITEM2
和 insert KEY
, ITEM
, andITEM2
到目标表中。我不知道如何在编程方面解决这个问题。
以下是我尝试至少用键值填充目标,但无济于事,因为我收到了无效的标识符错误。如果有人可以对此进行更正/扩展以获得我需要的东西,将不胜感激:
sql - 执行即时语句
execute immediate
我正在尝试使用语句将数据插入表中。但我得到一个错误
任何人都可以看看有什么问题吗?
sql - 如何在立即执行中将表名添加到动态查询中?
我很困惑,因为我不知道如何在execute immediate
子句中使用变量作为字符串。
这variable1
是一个表名。应该有一个字符串值。怎么做?还是报错。
oracle - 如何解决 ORA-00933:SQL 命令未在 oracle 中正确结束?
这是通过将 3 个输入参数传递给函数创建的包
这是获取计数的查询
获取 ORA-00933: SQL 命令未在 oracle 中正确结束
这是包裹体
oracle - 为什么这里需要立即执行?
我是 SQL Server 用户,我有一个使用 Oracle 的小项目要做,所以我试图了解 Oracle 的一些特殊性,我认为我需要一些帮助来更好地理解以下情况:
我想在创建临时表之前测试它是否存在,所以我在这里有这段代码:
它工作正常,所以在我执行一次之后,我在我的 IF 上添加了一条 else 语句:
再次执行它并在我的测试表中添加了一行。
好的,我的代码已经准备好并且可以工作了,所以我删除了临时表并尝试再次运行整个语句,但是当我这样做时,我收到以下错误:
然后我将我的 else 语句更改为此,现在它再次起作用:
我的问题是为什么单独运行我可以简单地使用插入而不是 EXECUTE IMMEDIATE 以及为什么我的 SELECT 语句在 BEGIN 之后仍然有效,而其他所有似乎都需要 EXECUTE IMMEDIATE 才能正常运行?