2016-11-03 7 views
0

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

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

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))) 
+0

Да - и?!?!?! Вы получаете сообщение об ошибке? Если да: пожалуйста ** отправьте его здесь **, потому что мы не можем читать ни ваш экран, ни ваш разум! –

+0

Ошибка: неправильный синтаксис рядом с ключевым словом «AS». –

ответ

0

Синтаксис для изменения колонны:

ALTER TABLE tablename 
    ALTER COLUMN columnname columndatatype(size) 

и пример е:

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

Попробуйте эти манеры

0

Вы не можете изменить существующий столбец и сделать его как вычисляемый столбец, вам нужно удалить и заново

alter table EmployeeRegistration 
    drop column Password 
alter table EmployeeRegistration 
    add Password AS ('XP'+right('0123'+CONVERT([varchar](50),[Sr_no],(0)),(8))) 
Смежные вопросы