Как обновить столбец в SQL Server 2008

Я новичок в SQL Server, поэтому любая помощь в этом была бы очень признательна. Я не могу найти ошибку при обновлении существующего столбца с автогенерированной записью

Вот моя структура таблицы:-

CREATE TABLE [dbo].[EmployeeRegistration]
(
    [ID] [int] NULL,
    [Sr_no] [int] IDENTITY(1,1) NOT NULL,
    [Branch_Code] [varchar](200) NULL,
    [City] [varchar](200) NULL,
    [Employee_Name] [varchar](200) NULL,
    [Designation] [varchar](200) NULL,
    [Department] [varchar](200) NULL,
    [Date_of_Joining] [varchar](200) NULL,
    [Reporting_To] [varchar](200) NULL,
    [Staff_Code] [varchar](50) NULL,
    [Reporting_To_1] [varchar](200) NULL,
    [Staff_Code_1] [varchar](50) NULL,
    [Emp_Staff_Code]  AS ('T'+right('0000'+CONVERT([varchar](8),[Sr_no],(0)),(8))),
    [Password] [varchar](50) NULL,
    [confirmPassword] [varchar](50) NULL,
    [EMAIL_id] [varchar](50) NULL,
    [IsActive] [varchar](200) NULL,
    [Created_By] [varchar](200) NULL,
    [Created_On] [date] NOT NULL,
    [Modified_By] [varchar](200) NULL,
    [Modified_Date] [date] NOT NULL
)

Я хочу обновить Passwordстолбец с помощью запроса ниже:-

use AxpressDB 

alter table EmployeeRegistration 
   alter column Password AS ('XP'+right('0123'+CONVERT([varchar](50),[Sr_no],(0)),(8)))

2 ответа

  1. Синтаксис изменения столбца :

     ALTER TABLE tablename
        ALTER COLUMN columnname columndatatype(size)
    

    и пример :

     ALTER TABLE dbo.doc_exy 
        ALTER COLUMN column_a DECIMAL (5, 2) ;  
    

    Попробуйте эти способы

  2. Нельзя изменить существующий столбец и сделать его вычисляемым столбцом, необходимо удалить и повторно создать

    alter table EmployeeRegistration 
       drop column Password 
    alter table EmployeeRegistration 
       add Password AS ('XP'+right('0123'+CONVERT([varchar](50),[Sr_no],(0)),(8)))