列更新 - SQL UPDATE 语句

Column update - SQL UPDATE statement

我有一列用于存储参考 参考通常是 30 个字母数字值 该列设置为 nvarchar (30)。

我想将其更新为 nvarchar (5),并更新当前存储在此列中的所有值..

有没有办法使用更新来做到这一点?

应该在 SQL 服务器/MS Access 上执行此操作:

ALTER TABLE table_name
ALTER COLUMN column_name datatype;

首先更新 table 以便截断第 5 个字符后的所有列值:

UPDATE tablename SET columnname = LEFT(columnname, 5);

请注意,如果列上有约束(如唯一约束或外键引用),这可能不起作用。

然后更改列的数据类型:

ALTER TABLE tablename ALTER COLUMN columnname nvarchar(5);

查看简化版 demo.