用户自定义的函数要想能够在sql语句中使用,必须满足下列条件:
1、函数的所有参数必须为in模式。
2、函数的参数数据类型和返回值的数据类型必须为oracle数据库可以识别的。一些专门在pl/sql中使用的数据类型时数据库不能识别的。
3、函数必须保存在数据库中,在客户端pl/sql环境中定义的函数没有办法被sql语句调用。
在sql语句中使用自定义函数的限制:
1、函数不能修改数据库
2、如果是个远程调用或者在一个并行中调用,函数不能读或者写包变量
3、函数不能调用违反之前规则的其他模块
4、函数不能使用违反之前规则的视图
5、在11g数据库之前,只能使用位置表示法为函数的形参传递实参。
在sql语句中使用函数,应注意读一致性问题。如果在调用函数的过程,其他事务修改数据并提交,可能出现读取的不一致。如果在sql语句中调用函数,又不想出现不一致性问题,可以在汉函数中使用set transaction read only。
 
                   
                   
                   
                   
                             本文介绍了在SQL语句中使用自定义函数的条件及限制,包括函数参数、数据类型、存储位置的要求,并讨论了调用函数时可能出现的读一致性问题。
本文介绍了在SQL语句中使用自定义函数的条件及限制,包括函数参数、数据类型、存储位置的要求,并讨论了调用函数时可能出现的读一致性问题。
           
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                   251
					251
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            