Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Concatena ntext in SQL Server 2005

UPDATE 
    YourTable
SET 
    Field = CAST( (CAST(field1 AS NVARCHAR(MAX)) + CAST(field2 AS NVARCHAR(MAX))) AS NTEXT)
WHERE 
    (your condition here)

Ma in realtà, con SQL Server 2005, NTEXT diventa obsoleto e molto probabilmente verrà eliminato gradualmente in SQL Server 2008 R2 o in una versione successiva. NVARCHAR(MAX) è il logico successore, dandoti tutto NTEXT mai dato, e molto di più!

Se i tuoi campi fossero NVARCHAR(MAX) dall'inizio potresti semplicemente scrivere:

UPDATE 
    YourTable
SET 
    field = field1 + field2
WHERE 
    (your condition here)

e falla finita!

Ti suggerisco di aggiornare le tue tabelle per utilizzare NVARCHAR(MAX) invece di NTEXT .

Marco