当前位置: 代码迷 >> Sql Server >> -table 可以作为 create function(参数) 的参数么?该怎么解决
  详细解决方案

-table 可以作为 create function(参数) 的参数么?该怎么解决

热度:482   发布时间:2016-04-27 19:41:30.0
---------------------table 可以作为 create function(参数) 的参数么?-------------------
如题,如果可以应该怎么写?

------解决方案--------------------
不可以
------解决方案--------------------
可以作为表变量输出参数。 :)
------解决方案--------------------
--传个表名?

CREATE FUNCTION my_func (@tb_name varchar(20))
as
--使用动态语句完成查询
set @sql as varchar(100)
set @sql = 'select * from ' + @tb_name
exec(@sql)
begin

my_func( 'tb_name ')
------解决方案--------------------
输出表不可以的,但是传表名是不可以的
------解决方案--------------------
输出表不可以的,但是传表名是可以的
------解决方案--------------------
--内嵌表值函数
CREATE FUNCTION uf_test (@ID varchar(30))
RETURNS TABLE
AS
RETURN (SELECT * FROM a,b WHERE s.id = @id and
a.title_id = b.title_id )
go

------解决方案--------------------
回复人:duanzhi1984(莫邪) ( ) 信誉:100 2007-09-20 16:05:08 得分:0
? 输出表不可以的,但是传表名是可以的

===========================
你说倒过来了:)
------解决方案--------------------
同意鸟,不可以,自定义函数中除扩展存储过程外,其他存储过程或sql字条串不可执行
------解决方案--------------------
不可以的
------解决方案--------------------
同意鸟,不可以,自定义函数中除扩展存储过程外,其他存储过程或sql字条串不可执行

====
正解,大乌龟的函数编译没问题,但执行就会报错。
  相关解决方案