一樣從SQL Server 2005 開始都可以使用。
Ps.對於資料表値函式而言,傳回資料表類型的資料行不得包含時間戳記資料行或非 Unicode 字串資料類型資料行 (例如,char、varchar 和 text)。 不支援 NOT NULL 條件約束。
這範例是依照formID抓出資料表相對應的Tree
在資料庫裡的 可程式性/函數/資料表值函式 按右鍵就可以新增了
不過這個似乎只有參考價值了 XD
USE [DataBase]GO/****** Object: UserDefinedFunction [dbo].[f_GetFormTree] Script Date: 08/03/2011 14:38:34 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER Function [dbo].[f_GetFormTree] ( @PID int)Returns @t table ( FormID int, FormName varchar(50), ParentID int, LevelID int, Seq smallint)AsBegin Insert @t Select ft.FormID, ft.FormName, ft.ParentID, ft.LevelID, ft.Seq From FormTable ft Where ft.FormID = @PID And ft.Status = 0 While @@rowcount > 0 Insert @t Select a.FormID, a.FormName, a.ParentID, a.LevelID, a.Seq From FormTable As a Inner Join @t As b On a.ParentID = b.FormID And a.Status = 0 And a.FormID Not In (Select FormID From @t) Order By a.LevelID, a.SeqReturnEnd
沒有留言:
張貼留言