Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Конкатенация на ntext в SQL Server 2005

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

Но наистина - с SQL Server 2005, NTEXT става остарял и най-вероятно ще бъде премахнат в SQL Server 2008 R2 или една версия по-късно. NVARCHAR(MAX) е логичният наследник, който ви дава всички NTEXT някога са ви давали и много повече!

Ако вашите полета биха били NVARCHAR(MAX) от самото начало можете просто да напишете:

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

и да приключим с това!

Предлагам ви да надстроите таблиците си, за да използвате NVARCHAR(MAX) вместо NTEXT .

Марк



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какво е значението на следната декларация на SQL Server:datetime2(7)?

  2. Разрешението SELECT беше отказано на обекта „sysjobs“, база данни „msdb“, схема „dbo“

  3. Заявка за получаване на най-скорошното присъединяване на друга таблица с дата

  4. Заявки между бази данни с различни имена на DB в различни среди?

  5. sql сървър един ред множество колони в една колона