IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_UserUISettingsRecord]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT')) DROP FUNCTION [dbo].[foo_UserUISettingsRecord] GO SET ANSI_NULLS OFF GO SET QUOTED_IDENTIFIER OFF GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[foo_UserUISettingsRecord]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT')) BEGIN execute dbo.sp_executesql @statement = N'CREATE FUNCTION [dbo].[foo_UserUISettingsRecord](@source [nvarchar](max), @delimiter [nvarchar](max)) RETURNS TABLE ( [UIPProperty] [nvarchar](50) NULL, [UIPPropertyValue] [int] NULL ) WITH EXECUTE AS CALLER AS EXTERNAL NAME [SplitRecord].[SplitRecord.UserUISettings].[SplitUserUISettingsRecord]' END GO