视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
编写Oracle包中的函数应当注意的两点问题
2020-11-09 08:03:40 责编:小采
文档


自己刚开始用PL/SQL来写一点东西,现在还肤浅的很,说这些不是想谦虚,而是想如果有高手看到自己有什么地方写错的,希望给我一点指点。 今天下午找了一下午自己的那个PL/SQL包的错误,最后还是解决了。。两个小的不能再小的问题,和大家分享一下。 1、在PL

自己刚开始用PL/SQL来写一点东西,现在还肤浅的很,说这些不是想谦虚,而是想如果有高手看到自己有什么地方写错的,希望给我一点指点。

今天下午找了一下午自己的那个PL/SQL包的错误,最后还是解决了。。两个小的不能再小的问题,和大家分享一下。

1、在PL/SQL中如果是函数,就可以SQL语句中使用,也可以在其他的PL/SQL程序段中使用。但是在程序段中使用的话就一定要注意了,必须要接收函数的返回值。要不然PL/SQL会认为这个函数是一个过程,而返回参数类型不正确的错误。

如:function add_two_num(num1 in number,num2 in number)return number这样的函数,调用的时候即使你不使用这个返回值也要用num3:=add_two_num(num1,num2);的形式,不能使用add_two_num(num1,num2)的形式。呵呵,有时我们会用到out类型的变量,可能会出现这种情况。

2、在包头中定义函数和包体中实现函数时变量的名称一定要一样,否则会提示包头中的某个函数没有定义,如:在包头中定义function add_two_num(num1 in number,num2 in number)return number;在包体中实现时你只实现了function add_two_number(num3 in number,num2 in number);时就会出现错误,这个也不难想到,想一下在PL/SQL中有几种调用函数的方法你就会对这个设置的意义很明了了。。

下载本文
显示全文
专题