我试图改变一个列从一个varchar(50)到一个nvarchar(200)。修改该表的SQL命令是什么?
当前回答
不要忘记可空性。
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
其他回答
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
编辑 如前所述,NULL/NOT NULL应该被指定,参见Rob的回答。
使用Alter table语句。
Alter table TableName Alter Column ColumnName nvarchar(100)
ALTER TABLE [dbo].[TableName]
ALTER COLUMN ColumnName VARCHAR(Max) NULL
试试这个:
ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";
只要增加varchar的大小就没问题。根据Alter Table引用:
降低列的精度或比例可能导致数据截断。
推荐文章
- 比较两个SQL Server数据库(模式和数据)的最佳工具是什么?
- 在SQL中,如何在范围中“分组”?
- 选项(RECOMPILE)总是更快;为什么?
- 设置数据库从单用户模式到多用户
- 我如何转义一个百分比符号在T-SQL?
- SQL Server恢复错误-拒绝访问
- 添加一个复合主键
- 如何在SQL Server Management Studio中查看查询历史
- SQL Server索引命名约定
- 可以为公共表表达式创建嵌套WITH子句吗?
- SQL Server的NOW()?
- 在SQL Server中截断(不是四舍五入)小数位
- 在Swift中转换Float为Int
- 如何在SQL Server数据库中更改列数据类型而不丢失数据?
- 保持简单,以及如何在一个查询中执行多个CTE