oracle 直接创建函数 和在包体里创建函数有什么区别
我用plsql开发,如果直接create函数,函数不会出现在包里,而是在function目录下面,如果在包里创建,则会出现在包里,他们两者有什么区别。另外,type目录下...
我用plsql开发,如果直接create 函数,函数不会出现在包里,而是在function目录下面,如果在包里创建,则会出现在包里,他们两者有什么区别。 另外,type目录下的自定义数据类型 和 包体里的自定义类型有什么区别,而且他们创建的语法也不一样,直接创建的话,比如: create type list as table of varchar2(100); 这样在type目录下会出现list这个数据类型,但是在包体里就得写成 type list is table of varchar2(100); 他们有什么区别?
展开
展开全部
如果直接create 函数,函数不会出现在包里,而是在function目录下面,如果在包里创建,则会出现在包里,他们两者有什么区别。
答:直接创建的函数,是数据公共函数。在调用函数的时候直接调用函数名带上参数就可以。
而建在包体里的函数是私有函数,在有在包体里才能直接用函数名带参数调用。
外部程序要调用 侧需要报名.函数名(参数)这样去调用。
type目录下的自定义数据类型 和 包体里的自定义类型有什么区别?
答:与上面的函数类似。一个是公共的。一个只能在包里被使用的数据类型。对于别的包是不可见的。
如果定义在包头,在整个包可以引用。
如果定义在包体的过程里则只有过程可以引用。
答:直接创建的函数,是数据公共函数。在调用函数的时候直接调用函数名带上参数就可以。
而建在包体里的函数是私有函数,在有在包体里才能直接用函数名带参数调用。
外部程序要调用 侧需要报名.函数名(参数)这样去调用。
type目录下的自定义数据类型 和 包体里的自定义类型有什么区别?
答:与上面的函数类似。一个是公共的。一个只能在包里被使用的数据类型。对于别的包是不可见的。
如果定义在包头,在整个包可以引用。
如果定义在包体的过程里则只有过程可以引用。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询