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

Как да промените размера на колона в SQL Server (T-SQL)

Ако използвате SQL Server и искате да използвате T-SQL, за да промените размера на съществуваща колона, тази статия може да ви помогне.

Под „промяна на размера на съществуваща колона“ имам предвид промяна на размера на данните. Например, да речем, че имате varchar(255) но искате да увеличите размера му до varchar(500) . Ето какво трябва да направите в този случай.

Изявлението ALTER TABLE

Ако правите това с T-SQL, трябва да използвате ALTER TABLE изявление. Този израз ви позволява да промените дефиницията на таблица, след като тя вече е създадена (и може също да съдържа данни).

Ето пример за промяна на размера на съществуваща колона:

ALTER TABLE Tasks
    ALTER COLUMN TaskDescription varchar(500);
GO

Този пример модифицира Tasks таблица чрез промяна на размера на TaskDescription колона.

Това очевидно предполага, че колоната (и таблицата) вече съществуват в базата данни. В противен случай ще получите грешка.

Проверете резултатите

Можете да проверите размера на колоната, като изпълните заявка срещу INFORMATION_SCHEMA.COLUMNS . Като това:

USE Solutions;
SELECT 
    COLUMN_NAME,
    DATA_TYPE,
    CHARACTER_MAXIMUM_LENGTH,
    CHARACTER_OCTET_LENGTH
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Tasks';

Резултат:

COLUMN_NAME      DATA_TYPE  CHARACTER_MAXIMUM_LENGTH  CHARACTER_OCTET_LENGTH
---------------  ---------  ------------------------  ----------------------
TaskId           int        null                      null                  
TaskName         nvarchar   255                       510                   
TaskDescription  varchar    500                       500

В този случай преминаваме към правилната база данни (Solutions ), след което правим заявка за INFORMATION_SCHEMA.COLUMNS за информация относно колоните в Tasks маса. Можехме да стесним това само до колоната, която ни интересува, ако имаше твърде много колони в таблицата, но за този пример три колони не са проблем.


  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 код програмно

  2. SQL заявка за получаване на данни за последните 3 месеца

  3. Как да коригирате грешката „функцията datediff доведе до преливане“ в SQL Server

  4. Достъп до набори от резултати от Съхранени процедури Transact-SQL SQL Server

  5. Групова актуализация в C#