我可以得到我在这里做错了什么
create or replace procedure load_category(
p_linea_cod varchar2,
p_modal_cod varchar2,
p_periodo_cod varchar2
)IS
BEGIN
insert into category(categoryid,externalcategoryid,name)values(
SEQ_CATEGORY.nextval,
(select cod_modal_est,nombre
from modalidad_estud@ULINK
where cod_linea_negocio = p_linea_cod
and cod_modal_est = p_modal_cod)
);
END;
我正在尝试使用序列和select语句(工作语句)进行简单的插入,但是可以使它工作,只是收到此错误:
ORA-00947: not enough values
我提前感谢你的帮助。
答案 0 :(得分:3)
当您插入三个时,您的选择仅返回一列。如果您需要将它们留空,请将NULL值添加到选择中,或将列保留在插入字段列表之外。
[编辑]
修改后的查询:
insert into category(categoryid, externalcategoryid, name)
select
SEQ_CATEGORY.nextval, cod_modal_est, nombre
from
modalidad_estud@ULINK
where
cod_linea_negocio = p_linea_cod
and cod_modal_est = p_modal_cod;