我必须将值插入 my_temp_table。一些列存储在 v_ModelsList 变量中。v_ModelsList 是:Model_7318802U,Model_7304773U,Model_M0347。有必要使用具有这些值的变量,因为这些值可能不同,因此我无法在插入语句中对其进行硬编码。下面是一段负责插入值的代码:
EXECUTE immediate
'insert into my_temp_table(PRODUCTIONLINENO, WEEKSCHEDULED, SCHEDULEDSTARTS,
MOVEOUTS, PERCENTAGEMOVES,:ModelsList)
values (:PRODUCTIONLINENO, :WEEKSCHEDULED, :SCHEDULEDSTARTS,
:MOVEOUTS, :PERCENTAGEMOVES, 1, 2, 3)
'
USING v_ColumnList, i.PRODUCTIONLINENO, i.WEEKSCHEDULED,
i.SCHEDULEDSTARTS, i.MOVEOUTS, i.PERCENTAGEMOVES;
当我尝试执行时出现错误: ORA-06512: at line 102 01747. 00000 - “invalid user.table.column, table.column, or column specification”
当我在没有这些列的情况下执行它时,一切正常。
EXECUTE immediate
'insert into my_temp_table(PRODUCTIONLINENO, WEEKSCHEDULED, SCHEDULEDSTARTS,
MOVEOUTS,PERCENTAGEMOVES)
values(:PRODUCTIONLINENO, :WEEKSCHEDULED, :SCHEDULEDSTARTS,
:MOVEOUTS, :PERCENTAGEMOVES)
'
USING i.PRODUCTIONLINENO, i.WEEKSCHEDULED, i.SCHEDULEDSTARTS,
i.MOVEOUTS, i.PERCENTAGEMOVES;