如何将员工表中工资列的列大小从数字(18,0)更改为数字(22,5)


当前回答

在这种情况下,您需要使用ALTER TABLE语句来增加列的大小。

下面是它的语法

ALTER TABLE table_name 修改column_name varchar (new_length);

其他回答

ALTER TABLE "Employee" MODIFY ("Salary" NUMERIC(2,5));

alter table Employee alter column salary numeric(22,5)
ALTER TABLE [table_name] ALTER COLUMN [column_name] varchar(150)

在这种情况下,您需要使用ALTER TABLE语句来增加列的大小。

下面是它的语法

ALTER TABLE table_name 修改column_name varchar (new_length);

运行ALTER COLUMN而不提及属性NOT NULL将导致该列被更改为可空,如果它已经不是。因此,您需要首先检查列是否为空,如果不是,则指定属性not NULL。或者,您可以使用下面的语句预先检查列的可空性,并运行具有正确属性的命令。

IF COLUMNPROPERTY(OBJECT_ID('Employee', 'U'), 'Salary', 'AllowsNull')=0
    ALTER TABLE [Employee]
        ALTER COLUMN [Salary] NUMERIC(22,5) NOT NULL
ELSE        
    ALTER TABLE [Employee]
        ALTER COLUMN [Salary] NUMERIC(22,5) NULL