update 是对表或视图中的现有数据进行更改的。
alter 通过修改、添加或删除列和约束来修改表、视图、存储过程、触发器等定义
你如果要修改db_qwer表中cd字段的长度修改到150,则需要用:
ALTER TABLE db_qwer ALTER COLUMN cd VARCHAR(150)
如果要修改db_qwer表中cd字段中的数据,则需要用:
update db_qwer set cd = '你所需要修改的内容' where [满足你的修改条件]
从你描述上看你应该是用第一种方法吧。
你的表中是否有数据?如果没有,比较容易,直接用
alter table db_qwer alter column cf nvarchar(150)
如果表中有数据,而且有超过150的,那就需要截取字符了
update db_qwer set cd=cast(cd as nvarchar(150))
alter table db_qwer alter column cd nvarchar(150)
--语法:
ALTER TABLE [表名]
ALTER COLUMN 需要修改的列名 新的数据类型 [NULL|NOT NULL]
--示例:
--有一个[a]表,修改其中的c1列类型为nvarchar(10),不能为空
ALTER TABLE [a]
ALTER COLUMN [a] c1 nvarchar(10) NOT NULL
update是用来更新表数据的,要修改列的类型或长度,是用alter table...alter column
要更改的列不能是数据类型为 text、image、ntext 或 timestamp 的列
数据类型是 varchar、nvarchar 或 varbinary,数据类型不更改,而且新列的大小要等于或者大于旧列的大小。
ALTER TABLE db_qwer ALTER COLUMN cd VARCHAR(150)
应该是这样写的吧。