Operatoren +=gælder kun for numeriske datatyper i SQL Server. Microsoft-dokumentation her
For strengsammenkædning skal du skrive opgaven og sammenkædningen separat.
DECLARE @sql nvarchar(max);
SELECT @sql = N'';
SELECT @sql = @sql + [definition] + N'
GO
'
FROM sys.sql_modules
WHERE OBJECT_NAME(object_id) LIKE 'dt%'
ORDER BY OBJECT_NAME(object_id);
PRINT @sql;
Hvis du kører denne forespørgsel i Management Studio, skal du også huske på, at der er en grænse for størrelsen af de data, som den returnerer (inklusive i en udskriftserklæring). Så hvis definitionerne af dine moduler overskrider denne grænse, vil de blive afkortet i outputtet.