在Oracle中使用select语句插入数据时出现无效字符错误

我正在尝试使用下面的查询从另一个表插入数据

cmd_write = new OracleCommand(@"insert into table1 (f_id,f_name,s_id,r_id,t_date,t_type,sys_entry_date,parent_sys_id,sys_f_source)
      select 
          f_id,1,sysdate,sys_id,sys_file_source 
      from table2 
      where sys_id = :sy_id 
      returning sys_id
        into :sys_get_id ",ora_con);

cmd_write.Parameters.Add(new OracleParameter("sy_id",sys_id));

OracleParameter sys_get_id = new OracleParameter("sys_get_id",OracleDbType.Int64);
sys_get_id.Direction = ParameterDirection.Output;
cmd_write.Parameters.Add(sys_get_id);
cmd_write.CommandTimeout = 0;

cmd_write.ExecuteNonQuery();

我收到此错误:

ora-00911:无效字符

yy2626 回答:在Oracle中使用select语句插入数据时出现无效字符错误

看来这是不可能的。 我尝试过了

create table A (c1 varchar(10) null);

declare 
   x varchar2(10);
   TYPE myType IS TABLE OF A.c1%TYPE INDEX BY BINARY_INTEGER;
   vData myType;
begin
   insert into A select dummy from dual returning c1 bulk collect into vData;
   -- null;
end;
/

无济于事。 Then I found this

本文链接:https://www.f2er.com/2346784.html

大家都在问