加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

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

发布时间:2020-12-12 07:03:48 所属栏目:MsSql教程 来源:网络整理
导读:我正在使用一个数据分析工具,并且我所要求的是接受用户的值,将其作为参数传递,并将其存储在表中。相当直截了当,所以我坐着写这个 create or replaceprocedure complex(datainput in VARCHAR2)isbegininsert into dumtab values (datainput);end complex;
我正在使用一个数据分析工具,并且我所要求的是接受用户的值,将其作为参数传递,并将其存储在表中。相当直截了当,所以我坐着写这个
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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读