sql >> Databasteknik >  >> RDS >> Sqlserver

Sammanfoga ntext i SQL Server 2005

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

Men egentligen - med SQL Server 2005, NTEXT fasas ut och kommer troligen att fasas ut i SQL Server 2008 R2 eller en version senare. NVARCHAR(MAX) är den logiska efterföljaren, vilket ger dig alla NTEXT någonsin gett dig, och mycket mer!

Om dina fält skulle vara NVARCHAR(MAX) från början kan du bara skriva:

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

och var klar med det!

Jag skulle föreslå att du uppgraderar dina tabeller till att använda NVARCHAR(MAX) istället för NTEXT .

Marc



  1. PHP hur man sparar HTML-sträng i databasen

  2. Få den första, andra, tredje eller fjärde måndagen i en månad i SQLite

  3. mysql underfråga i en LEFT JOIN

  4. Varför är dubbla kapslade NOT EXISTS-satser oundvikliga i SQL