You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
2.0 KiB
46 lines
2.0 KiB
USE [Vertragsverwaltung_20160404]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[dt_generateansiname] Script Date: 02.12.2016 09:08:54 ******/
|
|
DROP PROCEDURE [dbo].[dt_generateansiname]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[dt_generateansiname] Script Date: 02.12.2016 09:08:54 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER OFF
|
|
GO
|
|
/*
|
|
** Generate an ansi name that is unique in the dtproperties.value column
|
|
*/
|
|
create procedure [dbo].[dt_generateansiname](@name varchar(255) output)
|
|
as
|
|
declare @prologue varchar(20)
|
|
declare @indexstring varchar(20)
|
|
declare @index integer
|
|
|
|
set @prologue = 'MSDT-A-'
|
|
set @index = 1
|
|
|
|
while 1 = 1
|
|
begin
|
|
set @indexstring = cast(@index as varchar(20))
|
|
set @name = @prologue + @indexstring
|
|
if not exists (select value from dtproperties where value = @name)
|
|
break
|
|
|
|
set @index = @index + 1
|
|
|
|
if (@index = 10000)
|
|
goto TooMany
|
|
end
|
|
|
|
Leave:
|
|
|
|
return
|
|
|
|
TooMany:
|
|
|
|
set @name = 'DIAGRAM'
|
|
goto Leave
|
|
|
|
GO
|