如何将员工表中工资列的列大小从数字(18,0)更改为数字(22,5)
当前回答
ALTER TABLE [Employee]
ALTER COLUMN [Salary] NUMERIC(22,5) NOT NULL
其他回答
右键单击需要修改的表格——>选择“Design”——>修改“Data Type”列的值,如下图所示:
然后保存以完成对表设计的更改。
小表采用GUI方法。 你在大的表中做改变,然后只使用命令,并排检查阻塞是否发生,直到命令完成。
可以使用ALTER命令修改表模式。
修改列大小的语法为
ALTER table table_name modify COLUMN column_name varchar (size);
对于Oracle数据库:
VARCHAR2(255 CHAR);
ALTER TABLE [table_name] ALTER COLUMN [column_name] varchar(150)
运行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
推荐文章
- 在SQL server查询中将NULL替换为0
- 在SQL中修改表的模式名
- 如何得到累计和
- 如何在SQL Server 2005的一条语句中更新两个表?
- 如何创建临时表与SELECT * INTO tempTable从CTE查询
- 用于查找计数为>的记录的SQL查询
- “从Table1左连接Table2”和“从Table2右连接Table1”可以互换吗?
- 在SQL Server的选择语句中使用带TOP的变量,而不是动态的
- SQL变量保存整数列表
- 自然连接和内部连接的区别
- MySQL现在()+1天
- 在SQL中转换月号到月名函数
- 不可重复读和幻影读的区别是什么?
- 改变一个varchar列的最大长度?
- 如何在SQL中从DateTime格式获取时间?