当前位置: 代码迷 >> Sql Server >> 存储过程可以内嵌函数吗?解决办法
  详细解决方案

存储过程可以内嵌函数吗?解决办法

热度:115   发布时间:2016-04-27 19:12:42.0
存储过程可以内嵌函数吗?
存储过程可以内嵌函数吗?

类似于下面这样,正确的语法应该怎么写:

CREATE PROCEDURE
AS
BEGIN
  ......

  FUNCTION XYZ(@X NVARCHAR(20))
  AS 
  BEGIN
  ......
  END

  ......

END

------解决方案--------------------
在存储过程里面可以调用自定义函数。

但是为什么要在存储过程里面创建自定义函数呢?
------解决方案--------------------
SQL code
create proc p_testasbegin    declare @sql varchar(max)    set @sql = '        create function [f_test]()        returns int as        begin            return 1        end    '    exec(@sql)    select dbo.f_test()endgoexec p_test/*1*/
------解决方案--------------------
探讨

SQL code
create proc p_test
as
begin
declare @sql varchar(max)
set @sql = '
create function [f_test]()
returns int as
begin
return 1
end
'
……

------解决方案--------------------
确实没有,要用到函数直接在外键建一个,在存储过程里引用就是了。
------解决方案--------------------
当然可以内嵌函数 不过不如直接调用函数多好??
  相关解决方案