sql – 解决方案“无法在查询中执行DML操作”?

前端之家收集整理的这篇文章主要介绍了sql – 解决方案“无法在查询中执行DML操作”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用一个数据分析工具,并且我所要求的是接受用户的值,将其作为参数传递,并将其存储在表中。相当直截了当,所以我坐着写这个
create or replace
procedure complex(datainput in VARCHAR2)
is
begin
insert into dumtab values (datainput);
end complex;

我在sql Developer中使用以下语句执行此操作

begin
complex('SomeValue');  
end;

它工作正常,值被插入表中。但是,在数据分析工具中不支持上述语句,所以我使用了一个函数。以下是函数代码,它编译。

create or replace
function supercomplex(datainput in VARCHAR2)
return varchar2
is
begin
insert into dumtab values (datainput);
return 'done';
end supercomplex;

我再次尝试在sql Developer中执行它,但执行以下代码后,我无法在查询中执行DML操作

select supercomplex('somevalue') from dual;

我的问题是
– 我需要一个可以在sql Developer中运行上述函数的语句
– 可以执行我正在寻找哪个可以由select语句执行的函数
– 如果不可能做我所要求的,我想要一个理由,所以我可以通知我的经理,因为我是新的(像一个星期的旧版)到PL / sql,所以我不知道规则和语法。

附:我希望这是C甚至Java

猜你在找的MsSQL相关文章