plsql写存储过程,怎么插入新数据

plsql写存储过程,怎么插入新数据,第1张

在存储过程中插入数据肯定用到sql语句,写好insert语句就好了。

create or replace procedure p_insert_mt_jx(P_a1 in varchar2,P_a2 in varchar2,P_a3 in varchar2,P_a4 in varchar2)

as

sql_str varchar2(100)

begin

sql_str:='insert into mt_jx (a1,a2,a3,a4) values ('||P_a1||','||P_a2||','||P_a3||','||P_a4||',)'

execute immediate sql_str

/*

或者你可以不用execute immediate,可以直接写下面的sql

insert into mt_jx (a1,a2,a3,a4) values (P_a1,P_a2,P_a3,P_a4)

*/

commit

end

new SqlParameter("CountryName",country.CountryName)

似乎应该是

new SqlParameter("@CountryName",country.CountryName)

这样定义的parameter的变量名才和存储过程的参数名对应

另外返回-1 这个返回值是DBHelper.ExecuteCommand方法的返回值,为什么返回-1 应该看这个方法的定义,设置断点调试即可知道执行的细节

实现的方法和详细的 *** 作步骤如下:

1、第一步,创建一个存储过程,该代码如图所示。存储过程的主要目的是为表“JingYan”插入新数据,如下图所示,然后进入下一步

2、其次,完成上述步骤后,执行以下几行代码,并查看执行是否成功。现在,数据库中有一个存储过程源“sp_JY”,如下图所示,然后进入下一步。

3、接着,完成上述步骤后,查看“JingYan”表中的当前数组,只有三行数据,如下图所示,然后进入下一步。

4、然后,完成上述步骤后,在mysql中,要调用存储过程,只需使用“call”关键字并输入存储过程的名称即可。当然,如果有参数,则需要带一个参数。代码见下图,然后进入下一步。

5、随后,完成上述步骤后,再次查看“JingYan”表中的数据,可以看到当前数据已经是四个,这表明对存储过程的调用已成功插入了新数据,如下图所示,然后进入下一步。

6、接着,完成上述步骤后,添加另一个存储过程,该存储过程使用select语句返回表数据,如下图所示,然后进入下一步。

7、最后,完成上述步骤后,调用新的存储过程,可以看到结果中已经返回了表数据,如下图所示。这样,问题就解决了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11266673.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存