Поделиться через


Modify columns

Применимо к: SQL Server 2016 (13.x) и более поздних версиях Azure SQL DatabaseAzure SQL с управляемым экземпляромAzure Synapse AnalyticsАналитическая платформа (PDW)SQL база данных в предварительной версии Microsoft Fabric

Тип данных столбца в SQL Server можно изменить с помощью SQL Server Management Studio или Transact-SQL.

Warning

Изменение типа данных столбца, в котором уже есть данные, может привести к полной потере данных при преобразовании существующих данных в новый тип. Кроме того, код и приложения, зависящие от измененного столбца, могут дать сбой. Это касается запросов, представлений, хранимых процедур, определяемых пользователем функций и клиентских приложений. Эти сбои будут каскадными. Например, хранимая процедура, которая вызывает определяемую пользователем функцию, которая зависит от измененного столбца, может завершиться ошибкой. Внимательно рассмотрите любые изменения, которые вы собираетесь внести в столбец.

Permissions

Требуется разрешение ALTER на таблицу.

Использование SQL Server Management Studio (SSMS)

Изменение типа данных столбца с помощью SSMS

  1. В обозревателе объектов щелкните правой кнопкой мыши таблицу со столбцами, масштаб которых необходимо изменить, и выберите Конструктор.

  2. Выберите столбец, тип данных которого планируется изменить.

  3. На вкладке "Свойства столбца" выберите ячейку сетки для свойства типа данных и выберите новый тип данных из раскрывающегося списка.

  4. В менюФайл выберите Сохранитьимя таблицы.

Note

При изменении типа данных столбца конструктор таблиц применяет длину типа данных, определенную по умолчанию для выбранного типа данных, даже если была указана другая длина. Всегда устанавливайте необходимое значение длины типа данных после того, как был указан тип данных.

Warning

При попытке изменения типа данных столбца, связанного с другими таблицами, конструктор таблиц запрашивает подтверждение на внесение изменений и в столбцы других таблиц.

Use Transact-SQL

Изменение типа данных столбца с помощью Transact-SQL

  1. В обозревателе объектов подключитесь к экземпляру ядра СУБД.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте приведенный ниже пример в окно запроса и нажмите кнопку Выполнить.

    CREATE TABLE dbo.doc_exy (column_a INT );  
    GO  
    INSERT INTO dbo.doc_exy (column_a) VALUES (10);  
    GO  
    ALTER TABLE dbo.doc_exy ALTER COLUMN column_a DECIMAL (5, 2);  
    GO  
    

Дополнительные сведения об использовании ALTER TABLE для изменения столбцов см. в ALTER TABLE column_definition.

Next step