40 lines
2.4 KiB
Transact-SQL
40 lines
2.4 KiB
Transact-SQL
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_DBExportTestSetupMetaData]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
|
||
DROP FUNCTION [dbo].[foo_DBExportTestSetupMetaData]
|
||
GO
|
||
SET ANSI_NULLS ON
|
||
GO
|
||
SET QUOTED_IDENTIFIER ON
|
||
GO
|
||
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_DBExportTestSetupMetaData]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
|
||
BEGIN
|
||
execute dbo.sp_executesql @statement = N'CREATE FUNCTION [dbo].[foo_DBExportTestSetupMetaData]
|
||
(
|
||
@TestSetupId int
|
||
)
|
||
RETURNS xml
|
||
AS
|
||
BEGIN
|
||
RETURN isnull((select [TestObject]
|
||
,[TestSetupId]
|
||
,[PropName]
|
||
,[PropValue]
|
||
,[Optional]
|
||
,[Version]
|
||
from
|
||
(select ts.TestSetupName as [TestObject]
|
||
,ts.TestSetupId as [TestSetupId]
|
||
,[PropName]
|
||
,[PropValue]
|
||
,[Optional]
|
||
,[Version]
|
||
from [dbo].[TestSetupObjectMetaData] md
|
||
inner join [dbo].[TestSetups] ts on ts.TestSetupId = md.TestSetupId
|
||
where md.[TestSetupId] = @TestSetupId) MetaData
|
||
for xml auto, elements, BINARY BASE64, root (''MetaDatas'')), ''<MetaDatas />'')
|
||
END
|
||
|
||
'
|
||
END
|
||
|
||
GO
|