Ако използвате 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 маса. Можехме да стесним това само до колоната, която ни интересува, ако имаше твърде много колони в таблицата, но за този пример три колони не са проблем.