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

SQL Server:Как да изпълните Rtrim на всички varchar колони на таблица

За общ подход можете да използвате скрипт като този, за да генерира израза вместо вас за дадена таблица (полезно, ако имате много колони!):

DECLARE @SQL VARCHAR(MAX)
DECLARE @TableName NVARCHAR(128)
SET @TableName = 'YourTableName'

SELECT @SQL = COALESCE(@SQL + ',[', '[') + 
              COLUMN_NAME + ']=RTRIM([' + COLUMN_NAME + '])'
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = @TableName
    AND DATA_TYPE = 'varchar'

SET @SQL = 'UPDATE [' + @TableName + '] SET ' + @SQL
PRINT @SQL

Това просто ще отпечата SQL израза. След това можете да копирате + изпълните оператора или просто EXECUTE(@SQL) . Това не е тествано, така че просто го изпробвайте първо на тестова маса :)



  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

  2. Съхраняването на големи файлове в база данни причинява изключение от тип „System.OutOfMemoryException“

  3. Как да получите стойности, които не съдържат числа в SQL Server

  4. Максимално реално пространство във varbinary(max) в SQL Server

  5. MS SQL 2008 - вземете всички имена на таблици и техния брой редове в DB