Simplify your workflow in minutes.
Don't have an account yet? Sign up.
Noen automatiske oppgraderinger av databaser til SQL Server konverterer MEMO-felter til ntext. Disse feltene medfører feil i eRedaktør, og skal ikke brukes. De er også på vei ut fra SQL Server uansett, så det er flott å bli kvitt dem. Her er en enkel løsning for å konvertere alle disse feltene.
For å se hvilke felter det gjelder:
DECLARE @SQL NVARCHAR(MAX) = ''; SELECT @SQL = @SQL + 'ALTER TABLE ' + QUOTENAME(OBJECT_SCHEMA_NAME(object_id)) + '.' + QUOTENAME(OBJECT_NAME(object_id)) + ' ALTER COLUMN ' + QUOTENAME(Name) + ' NVARCHAR(MAX) ' + -- CASE WHEN is_nullable = 1 THEN 'NOT' ELSE '' END + ' NULL;' + CHAR(13) + 'GO; ' FROM sys.columns WHERE system_type_id = 99; --NTEXT Select @SQL
For å faktisk konvertere dem bytter du bare ut siste linjen med denne:
exec SP_EXECUTESQL @SQL;
For at dette skal fungere, må alle feltene være "nullable" eller har en verdi fra før. Det vil dukke opp feilmelding med hvilke felt som må endres for å komme videre.